读书人

Struts2 错误处理 ( jsp记录错误信息到

发布时间: 2012-10-17 10:25:46 作者: rapoo

Struts2 异常处理 ( jsp记录异常信息到日志 )

struts中的action有的时候不用try catch捕获异常,而将错误直接抛到jsp页面,

这样致使jsp直接把一大堆错误信息输出到页面或弹出异常信息,以下为解决方法:

?

测试的Actioin

?

public String execute() throws Exception {        if(true)             throw new Exception("出错咯.......");        return super.execute();}

?

struts.xml配置

<global-results><result name="exception">/jsp/exception.jsp</result></global-results><global-exception-mappings><exception-mapping result="exception" exception="java.lang.Exception"></exception-mapping></global-exception-mappings>

?jsp页面

<%@ page language="java" contentType="text/html; charset=GBK"%>  <%@ page import="org.apache.log4j.Logger" %><%@page import="java.text.SimpleDateFormat"%> <%@taglib prefix="s" uri="/struts-tags"%>   <html>       <head>           <title>异常处理页面</title>       </head>       <body>           <!--        <s:property value="exceptionStack"/>          <s:property value="exception.message"/>           -->         系统异常,请稍候再试...        <%          final  Logger logger = Logger.getLogger(getClass());        logger.error("系统异常>>>"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new java.util.Date())+">>>"+request.getAttribute("exception.message"));        %>    </body>   </html>

?

这样页面看到的是:系统异常,请稍候再试

后台记录日志 ERROR exception_jsp : 系统异常>>>2010-04-22 18:58:20>>>出错咯......

1 楼 topbox163 2011-08-01 自动捕获所有异常信息,然后用EMAIL发出来,请问怎么实现? 2 楼 fireinjava 2011-08-01 topbox163 写道自动捕获所有异常信息,然后用EMAIL发出来,请问怎么实现?
你在这个页面写个方法,把 <s:property value="exceptionStack"/> 发送出去就好了。

读书人网 >JavaScript

热点推荐