Let us see the Hello World program of struts
2, files required..
- success.jsp
- error.jsp
- index.jsp
- LogingEx.java [ in java4s package ]
- web.xml [ in web-inf ]
- struts.xml [ in web-inf/classes folder ]
index.jsp
|
1
2
3
4
5
6
7
8
9
10
11
12
|
<%@ taglib prefix="s"
uri="/struts-tags" %>
<html>
<body>
<s:form action="verify">
<s:textfield name="uname"
label="Enter Username" /><br>
<s:submit value="Click"
align="center" />
</s:form>
</body>
</html>
|
success.jsp
|
1
2
|
<%@ taglib prefix="s"
uri="/struts-tags" %>
You have been successfully executed
struts 2 hello world program..
|
error.jsp
|
1
2
|
<%@ taglib prefix="s"
uri="/struts-tags" %>
Login failed, wrong user name, user
name must be java4s
|
LogingEx.java
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
package java4s;
import com.opensymphony.xwork2.ActionSupport;
public class LogingEx extends ActionSupport{
private static
final long serialVersionUID = 1L;
private String
uname;
public String
getUname() {
return
uname;
}
public void
setUname(String uname) {
this.uname
= uname;
}
public String
execute()
{
if(uname.equals("java4s"))
{
return
SUCCESS;
}else
return
ERROR;
}
}
|
web.xml
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<?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">
<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>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
|
struts.xml
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<?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>
<include file="struts-default.xml"/>
<package name="a"
extends="struts-default">
<action
name="verify" class="java4s.LogingEx">
<result name="success">/success.jsp</result>
<result name="error">/error.jsp</result>
</action>
</package>
</struts>
|
Execution
Flow
- Right click on the project root > Run As > Run on Server
- index.jsp will be executed automatically, because we have given index.jsp in <welcome-file></welcome-file> of web.xml file
- Enter username as java4s and press ‘click‘ button
- In index.jsp we have given form action as verify [ line number 5 ], so container come to web.xml and check for URL pattern and jumps to struts.xml
- Now it will search for action name ‘verify‘, if found then corresponding java file given in class attribute will be executed [line number 10 ]
- Now execute() method will be executed in LogingEx.java, if condition is satisfied it will returns SUCCESS
- Again come to struts.xml line number 11, corresponding view will be executed
- That’s it.
No comments:
Post a Comment