java 过滤器异常处理_Servlet过滤器——异常捕获过滤器

1.概述

介绍如何实现异常捕获过滤器。

2.技术要点

本实例主要是在过滤器Filter的doFilter()方法中,对执行过滤器链的chain的doFilter()语句处添加try…catch异常捕获语句,然后在chach语句中,循环异常对象,直到找出根异常为止。

3.具体实现

(1)创建Filter实现类ExceptionFilter.java,利用throwable抛出异常,去捕捉异常原因并转到相应的页面中主要代码为:

public class ExceptionFilter implementsFilter {public voiddestroy() {

}public void doFilter(ServletRequest request, ServletResponse response,FilterChain chain) throwsIOException, ServletException {try{

chain.doFilter(request, response);

}catch (Exception e) { //如果有异常则捕捉

Throwable rootCause =e;while (rootCause.getCause() != null) {

rootCause=rootCause.getCause();

}

String errormessage= rootCause.getMessage(); //异常根本

errormessage = errormessage == null ? "异常:" +rootCause.getClass().getName()

:

你可能感兴趣的:(java,过滤器异常处理)