Spring 的异常处理

请求的时候总是报如下错误:

2012-11-26 14:56:09,687 [http-8090-1] WARN  [org.springframework.web.servlet.handler.SimpleMappingExceptionResolver] - Handler execution resulted in exception
java.lang.ClassCastException: org.springframework.web.bind.ServletRequestDataBinder cannot be cast to org.springframework.web.bind.support.WebRequestDataBinder
    at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.doBind(HandlerMethodInvoker.java:823)
    at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.doBind(HandlerMethodInvoker.java:813)
    at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.resolveHandlerArguments(HandlerMethodInvoker.java:367)
    at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:171)
    at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:363)
    at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:351)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:766)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:712)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:636)
    at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:556)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)

............

解决方法:

在Spring-servlet.xml中加入如下配置:

 <!-- Spring  Exception Resolver-->
    <bean id="exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
           <property name="defaultErrorView">
                  <value>/exception/failure</value>
           </property>
          <property name="exceptionMappings">
              <props>
                 <prop key="java.sql.SQLException">/exception/showDBError</prop>
                 <prop key="java.lang.RuntimeException">/exception/showError</prop>    
             </props>
          </property>
    </bean>


你可能感兴趣的:(spring,exception)