版权声明:本文为博主原创文章,版权归原作者小思所有,转载或者引用本文内容请注明来源及原作者,https://blog.csdn.net/zeal9s/ https://blog.csdn.net/zeal9s/article/details/81429722
1.这是我的项目的结构图(全局错误页面的配置),仅供参考
2.TestAction:测试报错
package com.zs.action;
import com.opensymphony.xwork2.ActionSupport;
public class TestAction extends ActionSupport{
public String test() {
//绝对会报错
System.out.println(1/0);
return SUCCESS;
}
}
3.global.xml:配置全局错误的xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="com.zs" namespace="/" extends="struts-default" >
<!-- 全局默认首先启动的action> -->
<default-action-ref name="TestAction"></default-action-ref>
<!--全局的结果页面 -->
<global-results>
<result name="global_error">/global_error.jsp</result>
</global-results>
<!--全局的异常处理 -->
<global-exception-mappings>
<exception-mapping result="global_error"
exception="java.lang.Exception"></exception-mapping>
</global-exception-mappings>
</package>
</struts>
4.zs.xml:配置自己的Action类
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="default" namespace="/" extends="com.zs">
<action name="TestAction" class="com.zs.action.TestAction" method="test">
<result>/success.jsp</result>
</action>
</package>
</struts>
5.global_error.jsp:报错自动条到的页面
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!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=utf-8">
<title>全局变量:错误页面</title>
</head>
<body>
不好意思,服务器开小差了。。。
</body>
</html>
6.success.jsp:成功之后跳转的页面
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!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=utf-8">
<title>Insert title here</title>
</head>
<body>
成功!
</body>
</html>
7这是我的项目的结构图(局部错误页面的配置),仅供参考
其他页面和上面的一样,以下页面的改动
error.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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=UTF-8">
<title>Insert title here</title>
</head>
<body>
TestAction报错了
</body>
</html>
zs.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="default" namespace="/" extends="com.zs">
<action name="TestAction" class="com.zs.action.TestAction" method="test">
<result>/success.jsp</result>
<!--局部错误页面配置,如果该Action配置了局部错误页面,那么全局对于它无效 -->
<result name="error">/error.jsp</result>
<exception-mapping result="error" exception="java.lang.Exception"></exception-mapping>
</action>
</package>
</struts>
**注意事项:注意package和继承的package的名字
如果该Action配置了局部错误页面,那么全局错误页面对于它无效
**
说在最后的话:编写实属不易,若喜欢或者对你有帮助记得点赞+关注或者收藏哦~