<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<constant name="struts.i18n.encoding" value="utf-8"></constant>
<package name="user" namespace="/user" extends="struts-default">
<global-results>
<result name="success">/success.jsp</result>
</global-results>
<action name="loginAction" class="action.LoginAction">
<result name="error">/index.jsp</result>
</action>
<action name="testAction" class="action.TestAction">
</action>
<action name="testAction1" class="action.TestAction1">
</action>
<action name="testAction2" class="action.TestAction2">
</action>
<action name="testAction3" class="action.TestAction3">
</action>
<action name="testAction4" class="action.TestAction4">
</action>
</package>
</struts>
package action;
import com.opensymphony.xwork2.ActionSupport;
import entity.User;
public class LoginAction extends ActionSupport {
private User user;
public String login() {
String r = "success";
if (null == user.getUserName() || "".equals(user.getUserName())) {
addFieldError("error_name", "username is error!");
r = "error";
} else if (null == user.getPassword() || "".equals(user.getPassword())) {
addFieldError("error_pwd", "password is error!");
r = "error";
}
return r;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
}
package action;
public class TestAction {
public String test(){
System.out.println("test");
return null;
}
}
package action;
import java.util.Map;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class TestAction1 extends ActionSupport {
private Map<String, Object> request;
private Map<String, Object> session;
private Map<String, Object> application;
@SuppressWarnings("unchecked")
public String test() {
request = (Map<String, Object>) ActionContext.getContext().get(
"request");
session = ActionContext.getContext().getSession();
application = ActionContext.getContext().getApplication();
request.put("r1", "r1");
session.put("s1", "s1");
application.put("a1", "a1");
return SUCCESS;
}
}
package action;
import java.util.Map;
import org.apache.struts2.interceptor.ApplicationAware;
import org.apache.struts2.interceptor.RequestAware;
import org.apache.struts2.interceptor.SessionAware;
import sun.org.mozilla.javascript.internal.ContextAction;
import com.opensymphony.xwork2.ActionSupport;
public class TestAction2 extends ActionSupport implements RequestAware,SessionAware,ApplicationAware {
private Map<String,Object> request;
private Map<String,Object> session;
private Map<String,Object> application;
public String test(){
request.put("r1", "r11");
session.put("s1", "s11");
application.put("a1", "a11");
return SUCCESS;
}
public void setRequest(Map<String, Object> request) {
this.request = request;
}
public void setSession(Map<String, Object> session) {
this.session = session;
}
public void setApplication(Map<String, Object> application) {
this.application = application;
}
}
package action;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class TestAction3 extends ActionSupport {
private HttpServletRequest request;
private HttpServletResponse response;
private HttpSession session;
private ServletContext application;
public String test() {
request = ServletActionContext.getRequest();
response = ServletActionContext.getResponse();
session = request.getSession();
application = ServletActionContext.getServletContext();
request.setAttribute("r1", "r111");
session.setAttribute("s1", "s111");
application.setAttribute("a1", "a111");
return SUCCESS;
}
}
package action;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.ServletResponseAware;
import org.apache.struts2.util.ServletContextAware;
import com.opensymphony.xwork2.ActionSupport;
public class TestAction4 extends ActionSupport implements ServletRequestAware,
ServletResponseAware, ServletContextAware {
private HttpServletRequest request;
private HttpServletResponse response;
private HttpSession session;
private ServletContext application;
public String test() {
session = request.getSession();
request.setAttribute("r1", "r1111");
session.setAttribute("s1", "s1111");
application.setAttribute("a1", "a1111");
return SUCCESS;
}
public void setServletRequest(HttpServletRequest request) {
this.request = request;
}
public void setServletResponse(HttpServletResponse response) {
this.response = response;
}
public void setServletContext(ServletContext application) {
this.application = application;
}
}
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<form action="user/loginAction!login" method="post">
username:<input type="text" name="user.userName"/><s:fielderror fieldName="error_name"></s:fielderror><br/>
password:<input type="password" name="user.password" /><s:fielderror fieldName="error_pwd"></s:fielderror> <br/>
<input type="submit" value="登录"/>
<s:debug></s:debug>
</form>
</body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'success.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<font color="red">${user.userName }</font>登录成功....
<br />
<font color="red"><s:property value="user.userName" />
</font>登录成功....
<br />
<font color="red"><s:property value="#request.user.userName" />
</font>登录成功....
<br />
<s:property value="#request.r1" />
<br />
<s:property value="#session.s1" />
<br />
<s:property value="#application.a1" />
<br />
<s:debug></s:debug>
</body>
</html>