Spring统一异常处理中@ControllerAdvice 不生效的问题

import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
//处理异常(全局异常处理)
import org.springframework.web.bind.annotation.RestController;


@ControllerAdvice

public class HandleExceptionAdvice {
@ExceptionHandler(Exception.class)
public String error(Exception ex,Model model) {
	model.addAttribute("errorMsg", ex.getMessage());
	return "commons/error";
}
}

今天使用springMVC通过@ControllerAdvice注解来实现全局异常的处理(代码如上),但调试了很久都报500的错误,最后试想是不是因为spring根本就没有扫描到@ControllerAdvice注解

这是MVC.XML文件

这是包的结构

于是调整了一下HandleExceptionAdvice所在的地方,到cn.as.web包下面

发现就成功了

所以说使用@ControllerAdvice处理全局异常必须要被spring所扫描到!!!

发布了6 篇原创文章 · 获赞 3 · 访问量 791

猜你喜欢

转载自blog.csdn.net/SmileLucki/article/details/105387585