Struts 2 Tags Code
Struts 2 Tags Code
java
Integer productId;
String productName;
Integer productPrice;
RegisterAction.java
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.Preparable;
String firstName;
String lastName;
String gender;
Integer age;
String email;
String address;
String selectedColor;
List<String> colors;
Boolean subscription;
List<String> hobbies;
String selectedHobbies;
List<Product> products;
if (lastName.equals("")) {
addFieldError("lastName", "Last name is required.");
}
if (gender == null) {
addFieldError("gender", "Gender is required.");
}
if (age == null) {
addFieldError("age", "Age is required.");
}
else if(age <= 18)
{
addFieldError("age", "Age should be above 18.");
}
if (email.equals("")) {
addFieldError("email", "Email is required.");
}
}*/
}
struts.xml
<struts>
<package name="register" extends="struts-default">
<action name="registerAction" class="RegisterAction">
<result name="success">/welcome.jsp</result>
<result name="input">/register.jsp</result>
</action>
<action name="formLoadAction" method="initializeFormFields" class="RegisterAction">
<result name="input">/register.jsp</result>
</action>
</package>
</struts>
register.jsp
<s:form action="registerAction">
<s:textfield name="firstName" label="First Name" />
<s:textfield name="lastName" label="Last Name" />
<s:radio name="gender" list="{'Male','Female'}" label="Gender" />
<s:textfield name="age" label="Age" />
<s:textfield name="email" label="Email" />
<s:textarea name="address" cols="30" rows="7" label="Address"/>
<s:select list="colors" name="selectedColor" headerKey="None" headerValue="Select a color"
label="Favourite Color" />
<s:checkbox name="subscription" value="true" label="Subscribe to our newsletter"/>
<s:checkboxlist list="hobbies" name="selectedHobbies" label="Hobbies" />
<s:reset value="Reset" />
<s:submit value="Register" />
</s:form>
<table border="1" width="300">
<tr>
<th>Product ID</th>
<th>Product Name</th>
<th>Product Price</th>
</tr>
<s:iterator value="products" var="product">
<tr>
<td>
<s:property value="#product.productId"/>
</td>
<td>
<s:property value="#product.productName"/>
</td>
<td>
<s:property value="#product.productPrice"/>
</td>
</tr>
</s:iterator>
</table>
</body>
</html>
welcome.jsp
<s:label value="Gender:"/>
<s:property value="gender"/><br/>
<s:label value="Age:"/>
<s:property value="age"/><br/>
<s:label value="Email:"/>
<s:property value="email"/><br/>
<s:label value="Address:"/>
<s:property value="address"/><br/>
<s:label value="Favourite Color:"/>
<s:property value="selectedColor"/><br/>
<s:label value="Hobbies:"/>
<s:property value="selectedHobbies"/>