このトピックでは、HTML フォーム、フォーム Bean (HTML フォームの Java 表現)、およびアクションを使って、ユーザ データ送信を設定する方法を説明します。
この手順では、このコード化の目標を達成するために役立つ主要なダイアログおよびウィザードに習熟することを目標とします。以下の手順は、ユーザ送信データにフォームが必要となるすべてのケースに適用できるわけではありません。たとえば、既存のフォーム Bean がある場合、以下の手順を直接適用できない場合があります。この場合、既存のリソースを利用するように以下の手順を読み替えます。すなわち、フォーム Bean を作成する手順の個所では、ドロップダウン リストから既存の項目を単に選択するようにします。
この手順では、1 つのページ フローが含まれる動的 Web プロジェクト ([新規|プロジェクト|その他|Web|動的 Web プロジェクト]) があるものと仮定しています。
(フォーム Bean が作成されている場合、この手順はスキップします。)
@Jpf.FormBean public static class Customer implements java.io.Serializable { private String firstName; private String lastName; }
作成したコードは、以下のようになります。
form.jsp ページ
<netui:form action="nameAction"> <table> <tr valign="top"> <td><label for="field1"> FirstName: </label></td> <td><netui:textBox dataSource="actionForm.firstName" tagId="field1"></netui:textBox></td> </tr> <tr valign="top"> <td><label for="field2"> LastName: </label></td> <td><netui:textBox dataSource="actionForm.lastName" tagId="field2"></netui:textBox></td> </tr> </table> <netui:button value="nameAction" type="submit" /> </netui:form>
Controller.java
@Jpf.Action(forwards = { @Jpf.Forward(name = "success", path = "confirm.jsp") }) public Forward nameAction(Controller.NameForm form) { Forward forward = new Forward("success"); return forward; } ... @Jpf.FormBean public static class NameForm implements java.io.Serializable { private static final long serialVersionUID = 1815159769L; private String firstName; private String lastName; public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } }