単純なStrutsフォームがあります。いくつかのテキストフィールドとファイルフィールドがあります。これ
enctype
はmultipart/form-data
私のフォームにあります。actionform
のvalidateメソッドで検証します。テキストフィールドが空の場合、必須であるというエラーを返します。表示フィールドに加えて、フォームが処理されてJSPに返されるときにリクエストパラメータとして必要ないくつかの非表示フィールドを渡します。JSPにはこれらのリクエストが必要params
です。
アクションでクラスparams
を使用してリクエストが返されるため、検証エラーがない場合はすべてうまく機能し
ます。ActionRedirect
しかし、返されるエラーがある場合、私はリクエストを失いparams
ます。actionform
( validateメソッドまたはアクションでそれらにアクセスできます)。
フォームparams
の検証エラー時にリクエストが確実に返されるようにするにはどうすればよいですか?multipart
何らかの回避策はありますか?
以下のアクションマッピング(難読化のために少し編集):
<action
path="/saveQuestion"
type="blahblahblah.QuestionAction"
parameter="save"
name="QuestionForm"
input="populateQuestion.do"
scope="request"
validate="true">
<set-property property="cancellable" value="true"/>
<forward name="success" path="viewSurvey.do" redirect="true"/>
</action>
<action
path="populateQuestion"
type="blahblahblah.QuestionAction"
parameter="populateRequest"
name="ItemForm"
scope="request">
<forward name="success" path=".editing.Question"/>
</action>
そして私のJSPフォームライン:
<html:form styleId="QuestionForm" action="/saveQuestion" enctype="multipart/form-data" method="POST">