Webページに含まれる各Struts入力フォーム(HTTP Postを使用する)について、データ入力フォームの状態の保持に役立つJavaBeanクラスを作成します。 Beanは、動的フォームBeanをサポートするorg.apache.struts.action.ActionForm
またはorg.apache.struts.action.DynaActionForm
を拡張する必要があります。 フォームBeanをプロジェクトに追加した後で、クラス・ファイルをカスタマイズしてBeanのsetterメソッドおよびgetterメソッドを定義します。
フォームBean要素をstruts-config.xmlファイルに追加するには、次のようにします。
アプリケーション・ナビゲータで、struts-config.xml
ファイルをダブルクリックします。 XMLエディタにstruts-config.xml
ファイルが開きます。
struts-config.xml
ファイルは、プロジェクトの「WEB-INF」フォルダにあります。 ナビゲータで、「Webコンテンツ」フォルダを開きます。
「表示」メニューから構造ウィンドウおよびプロパティ・インスペクタを開きます。
構造ウィンドウに表示される「Struts構造」ビューで、「Struts構成」ノードを開き、現在定義されているStruts要素のリストを表示します。
プロパティ・インスペクタで属性を編集している場合は、構造ウィンドウで「XML構造」を選択しないでください。 XML構造で表示されるのは、現在struts-config.xml
ファイルに値が定義されている属性のみです。 設定が必要な未定義の属性は、構造ウィンドウにXML構造が表示されているプロパティ・インスペクタには表示されません。
「Struts構成」ノードを右クリックし、「新規」メニューから「フォームBean」を選択して、構造ウィンドウにフォルダを作成します。
フォームBeanの属性を定義するには、次のようにします。
または
構造ウィンドウを使用している場合は、「フォームBean」フォルダから新規の要素名を選択し、プロパティ・インスペクタに、現在選択しているフォームBean要素の属性リストを表示して、属性値を設定します。
属性がフラット・リストとして表示される場合は、プロパティ・インスペクタの「カテゴリ」アイコンをクリックすると、属性がグループ別に表示されます。
新しいフォームBeanをコード・エディタで表示できます。 たとえば、Webページに入力フィールドloginId
が含まれている場合は、次のようにフォームBeanをカスタマイズしてフィールドを追加します。
public class MyLoginActionForm extends ActionForm {
protected String loginId;
protected FormFile myLoginJSPFile;
public void setLoginId(String text) {
loginId = text;
}
public String getLoginId() {
return loginId;
}
public void setMyLoginJSPFile(FormFile file) {
myJSPFile = file;
}
public FormFile getMyLoginJSPFile() {
return myLoginJSPFile;
}
}
また、フォーム内のデータをBeanによって検証する場合は、validate()
メソッドをカスタマイズできます。
public ActionErrors validate(ActionMapping mapping, HttpServletRequest request)
{
return super.validate(mapping, request);
}
StrutsベースのWebアプリケーションを実行する前に、フォームBeanをstruts-config.xml
ファイルに構成する必要があります。 実行時に、フォームBeanはStrutsコントローラ・サーブレットまたはJSPフォームにより作成されます。
Copyright © 1997, 2004, Oracle. All rights reserved.