Struts 2 テキストボックスの例
ダウンロードする – リンク://wp-content/uploads/2010/06/Struts2-textbox-Example.zip[Struts2-textbox-Example.zip]
Struts 2では、
<s:textfield>
を使用してHTML入力テキストボックスを作成できます。たとえば、キーアトリビュートまたはラベルと名前属性を持つ ”
s:textfield
“を宣言できます。
<s:textfield key="username"/>//or <s:textfield label="Username" name="username"/>
どちらも同じHTML出力を生成します(デフォルトのxhtmlテーマ)。
<td class="tdLabel"> <label for="registerUser__username" class="label">Username:</label> </td> <td> <input type="text" name="username" value="" id="registerUser__username"/> </td>
Struts 2では、「名前」は自動的にJavaBeanプロパティにマップされます。この場合、フォーム提出時に、 “name = ‘username'”のテキストボックス値は、対応するアクションのsetUsername(String xx)を呼び出して値を設定します。
Struts 2 <s:textfield>の例
Struts 2でテキストボックス入力フィールドを作成するためのクイック・ガイド。
1.プロパティファイル
メッセージを格納する2つのプロパティファイル。
#Global messages username = Username submit = Submit
-
RegisterAction.properties **
#error message username.required = Username is required
2.アクション
ユーザー名が空でないことを確認する検証を伴う単純なActionクラス。そうでない場合はエラーメッセージを返します。
-
RegisterAction.java **
package com.mkyong.user.action;
import com.opensymphony.xwork2.ActionSupport;
public class RegisterAction extends ActionSupport{
private String username;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
//business logic
public String execute() {
return "SUCCESS";
}
//simple validation
public void validate(){
if("".equals(getUsername())){
addFieldError("username", getText("username.required"));
}
}
}
3.ビューページ
Struts 2 ”
s:textfield
“を使用してHTMLテキストボックス入力フィールドを作成する結果ページ。
-
register.jsp **
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
</head>
<body>
<h1>Struts 2 - textbox example</h1>
<s:form action="registerUser" namespace="/user">
<s:textfield key="username"/>
<s:submit key="submit" name="submit"/>
</s:form>
</body>
</html>
-
welcome.jsp **
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<body>
<h1>Struts 2 - textbox example</h1>
<h2><s:property value="username"/></h2>
or
<h2><s:property value="%{username}"/></h2>
</body>
</html>
4. struts.xml
すべて一緒にリンクする〜
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.custom.i18n.resources" value="global"/>
<constant name="struts.devMode" value="true"/>
<package name="user" namespace="/user" extends="struts-default">
<action name="register">
<result>pages/register.jsp</result>
</action>
<action name="registerUser"
class="com.mkyong.user.action.RegisterAction">
<result name="SUCCESS">pages/welcome.jsp</result>
<result name="input">pages/register.jsp</result>
</action>
</package>
</struts>

