Java 如何忽略UI中的特定异常?
如何让当前Spring应用程序忽略UI上的特定异常类(比如NoUIException或Java 如何忽略UI中的特定异常?,java,spring,spring-mvc,Java,Spring,Spring Mvc,如何让当前Spring应用程序忽略UI上的特定异常类(比如NoUIException或OptimisticLockingException),但不影响日志记录?我知道,org.springframework.web.servlet.handler.SimpleMappingExceptionResolver可以将某些异常映射到UI请求,但不知道如何避免UI上的异常 更新 我在SpringWeb站点上做了一些研究,并提供了以下解决方案,我尝试了,但没有成功 @ControllerAdvice pu
OptimisticLockingException
),但不影响日志记录?我知道,org.springframework.web.servlet.handler.SimpleMappingExceptionResolver
可以将某些异常映射到UI请求,但不知道如何避免UI上的异常
更新
我在SpringWeb站点上做了一些研究,并提供了以下解决方案,我尝试了,但没有成功
@ControllerAdvice
public class ExceptionControllerAdvice {
@ResponseStatus(value = HttpStatus.CONFLICT)
@ExceptionHandler(org.apache.openjpa.persistence.OptimisticLockException.class)
public void optimisticLockExceptionHandler() {
// do nothing, just ignore the exception
logger.info("yeah...no exception I hope !!!");
}
}
更新2
我不确定它是否相关,但我在mvc配置上下文中有registerSimpleMappingExceptionResolver
<bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver" p:defaultErrorView="uncaughtException">
<property name="exceptionMappings">
<props>
<prop key=".DataAccessException">dataAccessFailure</prop>
<prop key=".AccessDeniedException">accessDenied</prop>
</props>
</property>
</bean>
数据访问失败
拒绝访问
是否有任何方式
SimpleMappingExceptionResolver
可能与控制器顾问发生冲突?异常处理程序由名为ExceptionHandlerExceptionResolver的HandlerExceptionResolver调用
确保已正确配置组件扫描;必须扫描包含您的建议的包。不要忘记启用注释
在SpringXML中:
<context:component-scan base-package="com.foo.bar" />
<mvc:annotation-driven>
在Spring引导中,使用@ComponentScan()。然后您必须扩展WebMVCConfigureAdapter类并指定您的解析器。这些解析器放在HandlerExceptionResolver组件中。第一个返回非空模型和视图的解析器获胜。如果不想显示特定异常的错误页面,请使用catch块捕获该异常,并且不重新引发任何特定于应用程序的异常