修改xml配置文件中DoradoFilter的声明:
<filter>
<filter-name>dorado-filter</filter-name>
<filter-class>com.bstek.dorado.core.DoradoFilter</filter-class>
<init-param>
<param-name>impl</param-name>
<param-value>xxx.xxx.xxx.MyFilterHandle</param-value>
</init-param>
</filter>
其中impl为一个扩展com.bstek.dorado.core.FilterHandle的一个扩展类,你只要复写FilterHandler的一个方法(processException)就可以定制自己的异常信息:
protected void processException(Throwable t) throws Throwable {
if (t instanceof ServletException) {
ServletException ex = (ServletException) t;
ex.getRootCause().printStackTrace();
throw ex;
} else {
t.printStackTrace();
throw t;
}
}
上面为FilterHandle的默认异常处理代码。