In this Tutorial we are performing server side validation using Struts2 framework on various fields eg. name,radio button and dropdownlist.
Project Structure in Project Explorer:
Download Struts2 Jars
Project properties
Web Deployment Assembly
fillform.jsp
create a user input page.
success.jsp
ContactAction.java
ContactAction-validation.xml
struts.xml
web.xml
Download Code
View in Browser:
More Struts Topics :
Download Struts2 Jars
Project properties
Web Deployment Assembly
fillform.jsp
create a user input page.
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Register</title>
</head>
<body bgcolor="brown">
<h1>Registration</h1>
<hr>
<s:form action="register.action" method="post" >
<s:textfield name="Name" label="Name" size="20" />
<s:radio name="Gender" label="Gender" list="{'Male', 'Female'}" />
<s:select name="Course" label="Course" list="{'Select-Option','B.Tech', 'MCA', 'MSC'}" />
<s:submit label="Register" align="center" />
</s:form>
</body>
</html>
success.jsp
create a user's success page.
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>success</title>
</head>
<body bgcolor="lightblue">
<center><h3>
Hello! <s:property value="name"/></h3></center>
</body>
</html>
ContactAction.java
create a Action java class.
package in.blog.webideaworld;
import com.opensymphony.xwork2.ActionSupport;
@SuppressWarnings("serial")
public class ContactAction extends ActionSupport {
private String name;
private String gender;
private String course;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getCourse() {
return course;
}
public void setCourse(String course) {
this.course = course;
}
public String execute() throws Exception{
return SUCCESS;
}
}
ContactAction-validation.xml
Create validators in XML file and the format for the validatiors xml file is <ActionClassName>-validation.xml
<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
"http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd">
<validators>
<field name="Name">
<field-validator type="requiredstring">
<message>Name is Required.</message>
</field-validator>
<field-validator type="regex">
<param name="expression">[a-zA-Z]{2,20}</param>
<message>Please enter valid name.</message>
</field-validator>
</field>
<field name="Gender">
<field-validator type="requiredstring">
<message>Gender is Required.</message>
</field-validator>
</field>
<field name="Course">
<field-validator type="regex">
<param name="expression">B.Tech|MCA|MSC</param>
<message>Course is required.</message>
</field-validator>
</field>
</validators>
struts.xml
set result name="success" for success.jsp and name="input" for fillform.jsp for validation messages to show up on input page.
<?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>
<package name="default" namespace="/" extends="struts-default">
<action name="register" class="in.blog.webideaworld.ContactAction" method="execute" >
<result name="success">success.jsp</result>
<result name="input">fillform.jsp</result>
</action>
</package>
</struts>
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>Struts2Validate_form</display-name>
<welcome-file-list>
<welcome-file>fillform.jsp</welcome-file>
</welcome-file-list>
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
Download Code
View in Browser:
checking validation:
success page:
More Struts Topics :
- How to Set Struts2 Environment for Eclipse with Oracle 10g Express Edition
- Simple struts2 program with Eclipse & Apache Tomcat Server
- Login Using Struts2 and Eclipse
- Database Access using Struts2,Eclipse and Oracle
- Basic form Validation using Struts2 Framework with validate() method and ActionSupport class
- Validation using Struts2 Framework and XML file on Radio button and DropDownList with Eclipse
- Validation using Struts2 Framework and XML file with Eclipse Indigo
- AJAX validation using Struts2 Framework and XML file with Eclipse Indigo
- Session Tracking using SessionAware Interface with Struts2, Oracle Database and Eclipse IDE
- Action Wildcards with Struts2
- How to Configure methods in Action mappings with or without Wildcards using Struts2
- Store and Retrieve Numeric, Alphanumeric and Blob (Image) data with Struts2, Oracle 10g XE and Eclipse Indigo as IDE
- How to use Struts2 Iterator tag to get Users Details with Oracle 10g XE and Eclipse
- How to iterate user details through ArrayList with Iterator tag in Struts2 using Oracle 10g XE and Eclipse
- How to upload Multiple Files- Images (blob data) with enctype="multipart/form-data" in Oracle Database using Struts2, JDBC and Eclipse IDE
No comments:
Post a Comment