[Seasar-user:18520] Re: S2JDBCでジョインしたエンティティが不正というエラー

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2009年 9月 25日 (金) 21:00:00 JST


小林 (koichik) です.

Date:    Fri, 25 Sep 2009 16:41:18 +0900
From:    "Tsutomu Uchima" <[E-MAIL ADDRESS DELETED]>
To:      <[E-MAIL ADDRESS DELETED]>
Subject: [Seasar-user:18517] S2JDBCでジョインしたエンティティが不正というエラー

> S2JDBCにてMappedByNotIdenticalRuntimeExceptionが発生しエラーとなる現象が発生
> しています。Hot deploy時に最初の一回目の処理が行われた場合にのみ発生している
> ように見えます。
> 
> 原因は不明ですが、何度かリロードしていると発生しなくなります。またCool
> deploy時には例外は発生しません。この例外の発生はHot deployが起因でしょうか?

School クラスが HOT deploy 非対象のクラスから
参照されているせいでしょう.

Tomcat を起動する JVM オプションで -verbose:class を
指定してみてください.

[Loaded jp.co.ospo.agencyOfCollectionMoney.entity.School from org.seasar.framework.container.hotdeploy.HotdeployClassLoader]

と

[Loaded jp.co.ospo.agencyOfCollectionMoney.entity.School from file:〜]

という 2 つのメッセージが表示されるはずです.
後者の方が HOT deploy 非対象のクラスから参照されて
ロードされたものなので,その周辺でロードされた
クラスから該当のものを見つけてください.

以前 [Seasar-user:16915] にも書いたように,

> その上で,SMART deploy 非対象クラスから
> SMART deploy 対象クラスは参照しない.

ようにしてください.


-- 
<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 メーリングリストの案内