[Seasar-user:21504] Re: 【SAStruts】セッションに設定したActionFormのページ単位の切り替えについて
YASUO HIGA
[E-MAIL ADDRESS DELETED]
2012年 11月 26日 (月) 18:01:45 JST
ひがです。
Formをセッションにおいてあるなら、redirectで遷移するとどうなるでしょうか。
また、HOT deployは関係ない気がしますが、使っているならやめるとどうなりますか。
________________________________________
差出人: seasar-user-bounces @ ml.seasar.org [seasar-user-bounces @ ml.seasar.org] が次の人の代理で送信しました: hikaru kondo [kondohikaru4seaser @ gmail.com]
送信日時: 2012年11月26日 10:45
宛先: seasar-user @ ml.seasar.org
件名: [Seasar-user:21503] 【SAStruts】セッションに設定したActionFormのページ単位の切り替えについて
初めまして。近藤です。
Dolteng-0.42.0 を用いてSAStruts + S2JDBC + Tilesで開発を行っております。
SAStruts は、1.0.4です。
以下問題と現象です。
二つの画面があり、両方の画面共にアクションフォームをセッションに設定しています。
現在その二つの画面間をLink(get送信)で移動しています。
その場合に、遷移先の画面を表示する際に、StrutsTagにて以下のエラーがおきます。
ActionFormWrapper xxxのプロパティに対するgetterメソッドがありません。
二回目以降(F5)は、エラーもなく表示されます。
調べたところ、CheckBoxTag:154行目にて、TagUtils.getInstance().lookup(pagecontext,
name, property, null)
としており、ここでエラーとなります。
実際は上記メソッドの内部で呼ばれる、TagUtils.lookup("org.apache.struts.taglib.html.BEAN")にて、ActionFormWrapper
を取得しており、ActionFormWrapperは、取得できているのですが、ActionFormWrapperがラッピングしている
Action,ActionFormは、今現在表示しようとしている画面のものではなく、前の画面のActionFormをみてしまっています。
そのため、目的のFieldがないことにより、上記エラーが出てしまっています。
2回目以降(F5)にエラーがでないのは、TagUtils.lookup("org.apache.struts.taglib.html.BEAN")で返されるActionFormWrapper
が正しい遷移先の画面の物を参照しているためです。
正しくSessionに格納しているActionFormを切り替えるためにはどうしたらよいのでしょうか。
以上、よろしくお願い致します。
_______________________________________________
Seasar-user mailing list
Seasar-user @ ml.seasar.org
https://ml.seasar.org/mailman/listinfo/seasar-user
Seasar-user メーリングリストの案内