在struts2中提供了一些常用的拦截器,其中就包括对异常处理的拦截器,我们直接声明使用即可,下面来看个例子。
struts.xml
-
- "-//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="eticket" extends="struts-default">
-
- <global-exception-mappings>
- <exception-mapping result="error" exception="java.lang.Exception">
- exception-mapping>
- global-exception-mappings>
- <action name="airTicketAction" class="AirTicketAction">
- <result>airticket/airticket.jspresult>
- <result name="detail">airticket/airticketdetail.jspresult>
- <result name="order">airticket/airticketorder.jspresult>
- <result name="error">error.jspresult>
-
- <exception-mapping result="nullPoint" exception="java.lang.NullPointerException">exception-mapping>
- <result name="nullPoint">error.jspresult>
-
- action>
- package>
- struts>
下面是一个action,产生一个异常,用于测试
AirTicketAction.java
- import com.opensymphony.xwork2.ActionSupport;
-
- @SuppressWarnings("serial")
- public class AirTicketAction extends ActionSupport {
-
- @Override
- public String execute() throws Exception {
-
-
- int i = 1/0;
- return SUCCESS;
- }
- }
用于显示的jsp页面
error.jsp
- <%@ page language="java" contentType="text/html; charset=UTF-8"
- pageEncoding="UTF-8"%>
- <%@ taglib prefix="s" uri="/struts-tags"%>
-
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- <title><s:text name="login.title">s:text>title>
- head>
- <body>
- <h1>出错了!h1>
- <s:property value="exception.message" />
- <s:property value="exceptionStack" />
- body>
- html>
很简单,配置完成可以使用了。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/14734416/viewspace-437317/
,如需转载,请注明出处,否则将追究法律责任。