- PR -

[struts1.3.8] ActionクラスのsaveErrorsメソッドについて

1
投稿者投稿内容
EarlyHero
常連さん
会議室デビュー日: 2007/03/16
投稿数: 37
お住まい・勤務地: 福岡県
投稿日時: 2008-12-15 12:08
こんにちは、EarlyHeroです。

現在、struts1.3.8を使用してプログラムを開発しております。
saveErrorsの使用方法について疑問がありますので質問させていただきます。

画面にエラーメッセージを表示する際に<html:errors>タグを
使用してActionMessagesの内容を表示しているのですが、
Actionクラス内でエラーメッセージを保存する際に以下のようにしています。

super.saveErrors(request, errors);

実際、これでエラーメッセージが画面上に表示できているのですが、
struts.configではこのActionクラスのスコープにセッションを設定しています。
(「scope="session"」としています。これは今回の開発上の仕様です。)

スコープでセッションを指定しているのに、エラーメッセージを保存する際には
リクエストを使用しているのですが、これは本当に問題ないのでしょうか?
セッションにしないとこんな問題が発生する、というようなことはないでしょうか?

ご存知の方がいらっしゃれば、何でもご意見頂きたいと思いますので宜しくお願い致します。

[ メッセージ編集済み 編集者: EarlyHero 編集日時 2008-12-15 12:15 ]
あすか
ぬし
会議室デビュー日: 2006/07/12
投稿数: 309
投稿日時: 2008-12-15 16:26
リクエストでOKです

引用:
struts.configではこのActionクラスのスコープにセッションを設定しています。
(「scope="session"」としています。これは今回の開発上の仕様です。)



action-mappingのことでしょうか
これはあくまでFormBeanのスコープですので
エラーメッセージとは関係ありません

セッションにメッセージを格納してしまうと
削除や上書きしない限り
前の状態が残ってしまうので
やっかいかと思います
EarlyHero
常連さん
会議室デビュー日: 2007/03/16
投稿数: 37
お住まい・勤務地: 福岡県
投稿日時: 2008-12-15 16:41
こんにちは、EarlyHeroです。

あすかさん、ご意見ありがとうございます。
「scope="session"」は仰られるとおりaction-mappingのことです。

saveErrorsを使用する際にパラメータをセッションにすると
そういうデメリットがあるんですね。勉強になりました。
saveErrorsのパラメータはリクエストのままにしておきます。

以上、宜しくお願い致します。
1

スキルアップ/キャリアアップ(JOB@IT)