2011-07-11 14 views
20

JavaとStrutsに関しては(私はJavaの世界で.NETボーイのように感じます)私はnoobです。strutsアクションのマッピングアクションの入力属性

アクションエレメントの入力属性とは何ですか?下の例では、入力はsomeinput.jspです。検証がname属性で指定されたフォームに失敗した場合

<action path="/somepath" 
     type="SomeAction" 
     name="SomeForm" 
     scope="session" 
     input="someinput.jsp"> 

答えて

29

フォームBean SomeFormが検証エラーを返すと、ページsomeinput.jspが返されます。 corresponding DTD

「名前」が指定されている場合のみ有効です。 "name"が指定されている場合は、 であり、入力Beanは検証エラーを返します。オプションで "name"が の場合、入力Beanは検証エラーを返しません。

3

Strutsはinput属性で指定したページ/アクションにユーザーを転送します。

0

上記にかかわらず、アクションの実行(1つのアクションユニットか複数のアクションユニットかにかかわらず)で結果を指定することもできます(SUCCESSFAILURE、またはINPUT)。

0

ストラットバリデータプラグインは、ビューから作成されたフォームBeanインスタンスをintecept、コントローラに行く前に検証を行い、データがエンドユーザ検証ルールに対するものであるならば、エラーは、オブジェクトれる入力属性ビューその中で消化され値として指定されています

0

入力属性のjspへのリダイレクト用です。しかし、あなたのアクションコントローラでは、mapping.findForward()の代わりにmapping.getInputForward()を指定する必要があります。

のStruts-configファイル:

<action input="test.jsp" 
     name="testActionForm" 
     path="/test" 
     scope="session"  type="package.TestActionController"> 
</action> 

アクションコントローラ:

public ActionForward doMethod(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { 
     return mapping.getInputForward(); 
} 
関連する問題