[Seasar-user:16726] Re: 【S2Struts】 HotDeployモードでIllegalArgumentExceptionが発生しています。
Koichi Kobayashi
[E-MAIL ADDRESS DELETED]
2009年 1月 22日 (木) 19:00:21 JST
小林 (koichik) です.
Date: Thu, 22 Jan 2009 17:58:30 +0900
From: minami <[E-MAIL ADDRESS DELETED]>
To: [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:16723] Re: 【S2Struts】 HotDeployモードでIllegalArgumentExceptionが発生しています。
> スタックをコピーしました。
> ===================================================================================
> スレッド [main] (中断中 (HotdeployBehavior の 97 行にブレークポイント))
> HotdeployBehavior.start() 行: 97
> AutoStrutsConfigRegisterPlugIn.init(ActionServlet, ModuleConfig) 行:
> 86
失礼しました,SAStruts 自身が初期化時に
HOT deploy を有効にしていたのですね.
static イニシャライザが 2 回動いているのは
気になりますが (毎回同じですか?),とりあえず
置いておいて (いいのか?),XX0101LoginUserInfoDto は
HotdeployClassLoader にロードされているようなので,
XX0101LoginAction の方が本来のクラスローダにロード
された XX0101LoginUserInfoDto を参照してしまって
いるのだと思われます.
XX0101LoginAction の static イニシャライザでも
クラスローダをログに出力するようにしてみてください.
同時に,フィールドの型のクラスローダも出力してみて
ください.
Field field = XX0101LoginAction.class.getField("loginUserInfoDto");
Class type = field.getType();
logger.debug(fieldType);
logger.debug(fieldType.getClass().getClassLoader());
--
<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 メーリングリストの案内