[Seasar-user:21841] Re: Seasar2とS2Flex2の相互バージョン関係について
Koichi Kobayashi
[E-MAIL ADDRESS DELETED]
2014年 3月 18日 (火) 03:04:00 JST
小林 (koichik) です。
やっぱり
> 2014-03-17 09:06:19,724 [http-8080-Processor19] WARN org.seasar.framework.container.hotdeploy.HotdeployClassLoader - HOT deploy対象クラス(avpdd2.dto.LoginUserDto)が非対象クラスから参照されて通常のクラスローダにロードされています。
が出力されてますね。
Hot deploy非対象のクラス (Filterやdiconに
直接記述されたコンポーネント、特にInterceptor)
がLoginUserDtoを使っていませんか?
もし使っているなら使わないようにするか、
LoginUserDtoをHot deploy非対象にする必要が
あります。
あるいはCool deployで起動するとどうなりますか?
On Mon, 17 Mar 2014 00:16:23 +0000, <ooishi-m @ bridgestone.co.jp> wrote:
> masanです。
>
> 回答ありがとうございます。
> すみません。
> このSerializableに部分はソースを変更しました。
> 以前のソースでは、Serializableをインタフェースを
> 実装していませんでしたが動作をしてました。
> が、今回はエラーが出てので実装しました。
>
> ログとLoginUserDtoのソースを添付します。
>
> 以上、よろしくお願いいたします。
>
> -----Original Message-----
> From: seasar-user-bounces @ ml.seasar.org [mailto:seasar-user-bounces @ ml.seasar.org] On Behalf Of Koichi Kobayashi
> Sent: Saturday, March 15, 2014 8:32 AM
> To: seasar-user @ ml.seasar.org
> Subject: [Seasar-user:21838] Re: Seasar2とS2Flex2の相互バージョン関係について
>
> 小林 (koichik) です。
>
> 「ソースを変更していない」だけでは十分な
> 情報を得られないので何とも言えないのですが、
> LoginUserDtoはSerializableインタフェースを
> 実装していますか?
>
> HttpSessionに格納されるオブジェクトは本来
> Serializableであるべきですが、そうでなくても
> 初期のSeasar2では動作してしまう場合がありました
> (HttpSessionの構成によります)。
>
> その後のHot deployでは、HttpSessionに
> 格納されるオブジェクトがHot deploy対象の
> 場合に[Seasar-user:21822]のような例外が
> 発生することを避けるため、リクエスト毎に
> シリアライズ/デシリアライズを行うように
> なっています。
> そのため、HttpSessionに格納するクラスは
> Serializableを実装している必要があります。
> # Hot deployともSeasar2とも関係なく、
> # セッションに格納する場合はSerializableで
> # あるべきです。
>
> LoginUserDtoがSerializableインタフェースを
> 実装しているにも関わらずセッションに保存
> されない場合は、ログやソースなど詳しい
> 情報を提示してください。
>
>
> On Fri, 14 Mar 2014 09:28:10 +0000, <ooishi-m @ bridgestone.co.jp> wrote:
>
> > masanです。
> >
> > 回答ありがとうございます。
> > 環境を最新のDoltengにしました。
> > 新しいプロジェクトを作成して、既存のソースをすべてそのプロジェクト内に
> > 移しコンパイルエラーがないところまではしました。
> > が、今までログイン情報をセッションに格納していたのですが
> > 何故かセッションに格納できなくなってしまいました。
> > ソースは変更していないので、何故にセッションに格納できなくなってしまったのか
> > わかりません。
> > セッションに格納するために、diconファイルの設定が必要だったでしょうか?
> >
> > 以上、よろしくお願いいたします。
> > -----Original Message-----
> > From: seasar-user-bounces @ ml.seasar.org [mailto:seasar-user-bounces @ ml.seasar.org] On Behalf Of Koichi Kobayashi
> > Sent: Friday, March 14, 2014 4:30 AM
> > To: seasar-user @ ml.seasar.org
> > Subject: [Seasar-user:21834] Re: Seasar2とS2Flex2の相互バージョン関係について
> >
> > 小林 (koichik) です。
> >
> > Seasar2の2.4.13から2.4.47だと間が飛びすぎ、
> > 特に2.4.18で大きな変更があったのでJarだけ
> > 入れ替えて動く可能性は少ないと思います。
> > Seasar2のバージョン変更時の注意点はこちらを
> > 参照してください。
> >
> > http://www.seasar.org/wiki/index.php?SeasarUpdateOperationLog
> >
> > > 途中から最新のDoltengの開発環境に移行の方法がわかりません。
> >
> > Doltengで新規プロジェクトを作成して、構成や
> > 設定を比較してみてください、という意味でした。
> >
> >
> > On Thu, 13 Mar 2014 00:18:44 +0000, <ooishi-m @ bridgestone.co.jp> wrote:
> >
> > > masanです。
> > >
> > > 回答ありがとうございます。
> > > 今回の件は、Seasar2.4.13とS2Flex2 1.0.1にて開発をしてきたのですが
> > > S2Dao を1.0.43から1.0.51にバージョンを上げる必要があった為の措置になります。
> > > (1.0.43では、MySQLのストアドプロシージャが認識できないようだったので)
> > > 上手く説明できないのですが、開発の途中で使用しているクラスの
> > > バージョンを上げる際は、クラスの入替えだけではだめでしょうか?
> > > S2Dao に関しては、dao.dicon の設定ファイルを書き換えています。
> > > 途中から最新のDoltengの開発環境に移行の方法がわかりません。
> > >
> > > 趣旨からずれてきてしまっていますが、教えていただけると助かります。
> > >
> > > 以上、よろしくお願いいたします。
> > >
> > > -----Original Message-----
> > > From: seasar-user-bounces @ ml.seasar.org [mailto:seasar-user-bounces @ ml.seasar.org] On Behalf Of Koichi Kobayashi
> > > Sent: Thursday, March 13, 2014 2:31 AM
> > > To: seasar-user @ ml.seasar.org
> > > Subject: [Seasar-user:21823] Re: Seasar2とS2Flex2の相互バージョン関係について
> > >
> > > 小林 (koichik) です。
> > >
> > > ログを見る限り、Hot deploy関連の設定の問題で
> > > S2Flex2との互換性は関係ないんじゃないかと
> > > 思います。
> > >
> > > この情報だけでは詳細はわかりませんが、古い
> > > (おそらく初回リクエスト時の) HotdeployClassLoderに
> > > ロードされたLoginUserDtoがその後のリクエストでも
> > > 続けて利用されようとしています。
> > > Hot deployでよくある「初回だけは動くけど〜」の
> > > 典型例のようなので、ここだけ見るとS2Flex2は
> > > 関係なさそうに見えます。
> > >
> > > 最新のDoltengを使うとSeasar2.4.46と
> > > S2Flex2 1.1.1-rc1の組み合わせでプロジェクトを
> > > 作ることが出来るので、そちらの設定を参考に
> > > してみてください。
> > >
> > >
> > > On Wed, 12 Mar 2014 08:55:20 +0000, <ooishi-m @ bridgestone.co.jp> wrote:
> > >
> > > > masanです。
> > > >
> > > > いつもお世話になっております。
> > > >
> > > > Seasar2とS2Flex2の相互バージョン関係について教えてください。
> > > > これまで、Seasar2のバージョンを2.4.13 S2Flex2のバージョンを1.0.1にて
> > > > 使用していましたが、Seasar2のバージョンを最新の2.4.47にしたところ
> > > > 下記のようなエラーが発生しています。
> > > >
> > > > ERROR 2014-03-12 17:40:26,685 [http-8080-Processor24] [ESSR0059]クラス(avpdd2.web.avpdd2.impl.IndexServiceImpl$$EnhancedByS2AOP$$da34f5)のプロパティ(loginUserDto)の設定に失敗しました。理由はorg.seasar.framework.exception.SIllegalArgumentException: [ESSR0098]クラス(avpdd2.web.avpdd2.impl.IndexServiceImpl$$EnhancedByS2AOP$$da34f5)[org.seasar.framework.container.hotdeploy.HotdeployClassLoader @ fa88fb]の型(avpdd2.dto.LoginUserDto)[org.seasar.framework.container.hotdeploy.HotdeployClassLoader @ fa88fb]のプロパティ(loginUserDto)に、型(avpdd2.dto.LoginUserDto)[org.seasar.framework.container.hotdeploy.HotdeployClassLoader @ 16b352c]の値(avpdd2.dto.LoginUserDto @ 9d9edd)を設定できませんでした。対象のクラスは(avpdd2.web.avpdd2.impl.IndexServiceImpl$$EnhancedByS2AOP$$da34f5)[org.seasar.framework.container.hotdeploy.HotdeployClassLoader @ fa88fb]です。
> > > > org.seasar.framework.beans.IllegalPropertyRuntimeException: [ESSR0059]クラス(avpdd2.web.avpdd2.impl.IndexServiceImpl$$EnhancedByS2AOP$$da34f5)のプロパティ(loginUserDto)の設定に失敗しました。理由はorg.seasar.framework.exception.SIllegalArgumentException: [ESSR0098]クラス(avpdd2.web.avpdd2.impl.IndexServiceImpl$$EnhancedByS2AOP$$da34f5)[org.seasar.framework.container.hotdeploy.HotdeployClassLoader @ fa88fb]の型(avpdd2.dto.LoginUserDto)[org.seasar.framework.container.hotdeploy.HotdeployClassLoader @ fa88fb]のプロパティ(loginUserDto)に、型(avpdd2.dto.LoginUserDto)[org.seasar.framework.container.hotdeploy.HotdeployClassLoader @ 16b352c]の値(avpdd2.dto.LoginUserDto @ 9d9edd)を設定できませんでした。対象のクラスは(avpdd2.web.avpdd2.impl.IndexServiceImpl$$EnhancedByS2AOP$$da34f5)[org.seasar.framework.container.hotdeploy.HotdeployClassLoader @ fa88fb]です。
> > > >
> > > > そもそもSeasar2とS2Flex2のこのバージョン関係は動作が
> > > > 保証されていないのでしょうか?
> > > > Seasar2のバージョン2.4.47で動作が保証される
> > > > S2Flex2のバージョンは何になりますか?
> > > >
> > > > 以上、よろしくお願いいたします。
> > > > _______________________________________________
> > > > Seasar-user mailing list
> > > > Seasar-user @ ml.seasar.org
> > > > https://ml.seasar.org/mailman/listinfo/seasar-user
> > >
> > >
> > > --
> > > {
> > > name: "Koichi Kobayashi",
> > > mail: "koichik @ improvement.jp",
> > > blog: "http://d.hatena.ne.jp/koichik/",
> > > twitter: "@koichik"
> > > }
> > >
> > > _______________________________________________
> > > Seasar-user mailing list
> > > Seasar-user @ ml.seasar.org
> > > https://ml.seasar.org/mailman/listinfo/seasar-user
> > > _______________________________________________
> > > Seasar-user mailing list
> > > Seasar-user @ ml.seasar.org
> > > https://ml.seasar.org/mailman/listinfo/seasar-user
> >
> >
> > --
> > {
> > name: "Koichi Kobayashi",
> > mail: "koichik @ improvement.jp",
> > blog: "http://d.hatena.ne.jp/koichik/",
> > twitter: "@koichik"
> > }
> >
> > _______________________________________________
> > Seasar-user mailing list
> > Seasar-user @ ml.seasar.org
> > https://ml.seasar.org/mailman/listinfo/seasar-user
> > _______________________________________________
> > Seasar-user mailing list
> > Seasar-user @ ml.seasar.org
> > https://ml.seasar.org/mailman/listinfo/seasar-user
>
>
> --
> {
> name: "Koichi Kobayashi",
> mail: "koichik @ improvement.jp",
> blog: "http://d.hatena.ne.jp/koichik/",
> twitter: "@koichik"
> }
>
> _______________________________________________
> Seasar-user mailing list
> Seasar-user @ ml.seasar.org
> https://ml.seasar.org/mailman/listinfo/seasar-user
--
{
name: "Koichi Kobayashi",
mail: "koichik @ improvement.jp",
blog: "http://d.hatena.ne.jp/koichik/",
twitter: "@koichik"
}
Seasar-user メーリングリストの案内