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

藤田 佳宏 [E-MAIL ADDRESS DELETED]
2008年 6月 20日 (金) 15:54:51 JST


藤田です。
いつもお世話になっております。

下記のSessionオブジェクトのEL式での参照ですが
現状は、Sesionオブジェクトのメンバー変数をprivateにし
getterを用意すれば取得は可能でした。

何とか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 メーリングリストの案内