[jpa:13] Re: Hibernate EntityManager の使用感想
Koichi Kobayashi
[E-MAIL ADDRESS DELETED]
2007年 4月 21日 (土) 23:00:38 JST
小林 (koichik) です.
Date: Sat, 21 Apr 2007 16:53:14 +0900
From: Hidenoshin Yoshida <[E-MAIL ADDRESS DELETED]>
To: [E-MAIL ADDRESS DELETED]
Subject: [jpa:12] Re: Hibernate EntityManager の使用感想
> LAZYロードさせないままのProxyを持ったEntityをHttpSessionに保存して
> 再起動したところ、Proxyのままでした。
Proxy のクラス名が変わらなければデシリアライズ
できるようになってますね.
でもでも,クラス名が変わることは普通にありそう.
例えば Foo と Bar というエンティティがあって,Bar から
Foo への関連が Proxy になってるとします (未ロード).
Bar をセッションに保存して Tomcat を終了し,新たな
エンティティ Baz を追加します.
そして Tomcat を再起動すると... どうなるでしょう?
最初は例えば
Foo_$$_javassist_1
Bar_$$_javassist_0
だったのが,再起動後は
Foo_$$_javassist_2
Bar_$$_javassist_0
Baz_$$_javassist_1
と変わってしまってデシリアライズに失敗するとか.
Proxy を作成する順番が名前順になるとは限らないけれど,
Proxy のクラス名が作成順に依存しているのは注意が必要かも.
まぁ,あんまり問題になりそうな状況が考えつきませんが.
--
<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>
jpa メーリングリストの案内