我有一个像这样定义的基本异常处理程序:
<bean id="exceptionResolver"
class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
<property name="defaultErrorView" value="errors.exception-handling" />
</bean>
我的控制器方法有这样的安全性:
@PreAuthorize("isAuthenticated()")
@RequestMapping(value = "/Home", method = RequestMethod.GET)
public String home(HttpServletRequest request, HttpSession sess) {
}
现在我已将NotAuthorized处理程序配置为在您点击/ Home时将您重定向到登录页面。但是,使用exceptionResolver,我只是得到我的页面说有错误。如果我注释掉exceptionResolver它就可以了。
如何让它忽略NotAuthroized和其他此类安全例外?
答案 0 :(得分:0)
您可以像这样添加
<property name="exceptionMappings">
<props>
<prop key="org.springframework.security.AccessDeniedException">loginPageUrl</prop>
</props>
</property>
更新:
您也可以指定excludedExceptions
以忽略NotAuthroized异常并让它单独处理。