[Seasar-user:14769] Re: [SAStruts]Exception による画面遷移制御について

Yasuo Higa [E-MAIL ADDRESS DELETED]
2008年 6月 20日 (金) 17:43:08 JST


ひがです。

> 藤田です。
> いつもお世話になっております。
> 
> > ActionにDIすると、publicフィールドでアクセスできる用になる
> > と思います。
> 
> ログイン情報のDTOなので、ルールとしてActionへのDIは必ずしています。
> 状態としては、input属性が
> Actionメソッド ⇒ 問題なし
> JSP ⇒ JspException(オペレータ "." を利用しましたが...)発生
> という感じです。
> 
すみません。
アドバイスが間違ってました。

RequestProcessorでフォワードした場合は、
ActionWrapper#exportPropertiesToRequestを通らないので、
確かに、getterメソッドが必要になります。

次のバージョンで、RequestProcessor#doForward()で
ActionWrapper#exportPropertiesToRequest相当の処理を入れようと
思います。

よろしくお願いします。

> もう少し、ソースを追いかけてみます。。。
> 
> Yasuo Higa さんは書きました:
> > ひがです。
> > 
> >> 藤田です。
> >> いつもお世話になっております。
> >>
> >> 下記のSessionオブジェクトのEL式での参照ですが
> >> 現状は、Sesionオブジェクトのメンバー変数をprivateにし
> >> getterを用意すれば取得は可能でした。
> >>
> >> 何とかpublicで対応したいと思っているのですが
> >> 何か良い案は無いものでしょうか。
> >>
> > ActionにDIすると、publicフィールドでアクセスできる用になる
> > と思います。
> > 
> >> 以上、よろしくお願いします。
> >>
> >> 藤田 佳宏 さんは書きました:
> >>> 藤田と申します。
> >>> いつもお世話になっております。
> >>>
> >>> 現在、業務側で発生したExceptionで共通的に処理するものを
> >>> 何とか1箇所にまとめることができないかと考えています。
> >>>
> >>> 例えば
> >>> SOptimisticLockExceptionがthrowされてきた場合には
> >>> 「他ユーザに更新されました。」
> >>> というメッセージを自画面に表示する。という感じです。
> >>>
> >>> 現状は、S2RequestProcessor#processActionPerformで
> >>> 下記のような感じにしています。
> >>>
> >>> ここから ----------
> >>> ActionForward forward = null;
> >>> try {
> >>> 	forward = action.execute(mapping, form, request, response);
> >>> } catch(SOptimisticLockException e) {
> >>> 	ActionMessage actionMessage = new ActionMessage("MSG001");
> >>> 	ActionMessages actionMessages = new ActionMessages();
> >>> 	actionMessages.add(Globals.ERROR_KEY, actionMessage);
> >>> 	ActionMessagesUtil.saveErrors(request, actionMessages);
> >>> 	forward = s2ActionMapping.createForward(							
> >>> executeConfig.resolveInput(s2ActionMapping)
> >>> 				);
> >>> } catch (Exception e) {
> >>> 	return (processException(request, response, e, form, mapping));
> >>> }
> >>> ---------- ここまで
> >>>
> >>> @Executeのinputを必須というルールにすることで、正しく遷移はできるのですが
> >>> Actionメソッドではなく、JSPに遷移した際にセッションに格納された情報を
> >>> EL式で参照できない現象になっています。
> >>>
> >>> (おそらく)EL式で参照するためには、
> >>> ActionWrapper#exportPropertiesToRequestを通す必要があると
> >>> 考えているのですが、RequestProcessor側で対処する方法は
> >>> ありませんでしょうか。
> >>>
> >>>
> >>> 以上、よろしくお願いします。
> >>>
> >>
> >> -- 
> >>  藤田 佳宏 (FUJITA Yoshihiro)
> >>  E-mail [E-MAIL ADDRESS DELETED]
> >> _______________________________________________
> >> Seasar-user mailing list
> >> [E-MAIL ADDRESS DELETED]
> >> https://ml.seasar.org/mailman/listinfo/seasar-user
> >>
> > _______________________________________________
> > Seasar-user mailing list
> > [E-MAIL ADDRESS DELETED]
> > https://ml.seasar.org/mailman/listinfo/seasar-user
> > 
> > 
> > 
> 
> 
> -- 
> エヌシーエステクノロジー株式会社
>  開発事業グループ 第三システム部
> 
>  藤田 佳宏 (FUJITA Yoshihiro)
>  E-mail [E-MAIL ADDRESS DELETED]
>  TEL:(06)6444-1003 FAX:(06)6444-1081
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
> 


Seasar-user メーリングリストの案内