在Spring security中处理附加异常和抛出自定义错误消息
我正在使用Spring 2.5。我想执行以下操作: 在SpringUserDetailsService的重写loadUserByUsername方法中,我想抛出一个自定义异常,并在该异常上在登录页面上给出一条自定义错误消息。在Spring security中处理附加异常和抛出自定义错误消息,spring,spring-security,Spring,Spring Security,我正在使用Spring 2.5。我想执行以下操作: 在SpringUserDetailsService的重写loadUserByUsername方法中,我想抛出一个自定义异常,并在该异常上在登录页面上给出一条自定义错误消息。 任何人都可以建议我如何处理这个自定义异常。您可以扩展AbstractHandlerExceptionResolver并在这个类中处理您的异常。代码不完整,但您可以从该部分理解其思想 public class ExceptionResolver extends Abstrac
任何人都可以建议我如何处理这个自定义异常。您可以扩展AbstractHandlerExceptionResolver并在这个类中处理您的异常。代码不完整,但您可以从该部分理解其思想
public class ExceptionResolver extends AbstractHandlerExceptionResolver {
@Override
protected ModelAndView doResolveException(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) {
ModelAndView mav;
if(ex instanceof YourException){
mav = loginController.showLoginPage();
mav.addObject("errorMessage","Some error message text.");
\\also you can change response code here or add some logic
}
else {
\\some another page
}
return mav;
}
还要将其添加到applicationContext.xml(或具有spring上下文配置的其他文件):
您可以扩展AbstractHandlerExceptionResolver并在此类中处理您的异常。代码不完整,但您可以从该部分理解其思想
public class ExceptionResolver extends AbstractHandlerExceptionResolver {
@Override
protected ModelAndView doResolveException(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) {
ModelAndView mav;
if(ex instanceof YourException){
mav = loginController.showLoginPage();
mav.addObject("errorMessage","Some error message text.");
\\also you can change response code here or add some logic
}
else {
\\some another page
}
return mav;
}
还要将其添加到applicationContext.xml(或具有spring上下文配置的其他文件):