[Seasar-user:9884] Re: [DbFlute]entity にidentityの値が設定されない

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2007年 8月 14日 (火) 03:00:27 JST


小林 (koichik) です.

Date:    Tue, 14 Aug 2007 02:09:17 +0900
From:    kubo <[E-MAIL ADDRESS DELETED]>
To:      [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:9881] Re: [DbFlute]entity にidentityの値が設定されない

> SQLServerがどうだったかわかりませんが、例えばMySQLなどでは、
> 「トランザクションが発行されていないとInsertしたIdentityの値を取得できない」
> というようなことがあります。
> ですが、ログを見るとしっかり「トランザクションをコミットしました 」と
> ありますね。。。

あまり可能性は高くないと思いますが,
トランザクションを開始/コミットしている
トランザクションマネージャと,コネクション
プールに DI されているトランザクション
マネージャが異なっているとか.

j2ee.dicon または jdbc.dicon の ConnectionPool の
設定で,

<component name="connectionPool"
  class="org.seasar.extension.dbcp.impl.ConnectionPoolImpl">
  <property name="timeout">600</property>
  <property name="maxPoolSize">10</property>
  <property name="allowLocalTx">false</property><!-- ここ -->
  <destroyMethod name="close"/>
</component>

allowLocalTx を false にすると,コネクション
プールに DI されているトランザクションマネージャが
トランザクションを開始していないと例外がスロー
されるので,確認してみてはいかがでしょうか>多加谷さん


-- 
<component name="koichik">
    <property name="fullName">"Koichi Kobayashi"</property>
    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>




Seasar-user メーリングリストの案内