我试图使用ExceptionHandler拦截tomcat默认的404页面。 我想做的就是在404的情况下显示索引页。
@ControllerAdvice
public class AdvisorController {
@ExceptionHandler(NoHandlerFoundException.class)
public String handle404(Exception ex) {
return "index";
}
}
但遗憾的是我只能看到tomcat默认的404页面。
我的网络初始化程序如下所示:
public class CRManWebAppInitializer implements WebApplicationInitializer {
@Override
public void onStartup(ServletContext servletContext) throws ServletException {
AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();
//ctx.register(CRManMVCConfig.class);
ctx.register(CRManMVCConfig.class, CRManJPAConfig.class, CRManSecurityConfig.class);
ctx.setServletContext(servletContext);
servletContext.addListener(new ContextLoaderListener(ctx));
DispatcherServlet dispatcherServlet = new DispatcherServlet(ctx);
dispatcherServlet.setThrowExceptionIfNoHandlerFound(true);
Dynamic registration = servletContext.addServlet("dispatcher", dispatcherServlet);
registration.setLoadOnStartup(1);
registration.addMapping("/");
}
}
请帮忙。我做错了什么?
答案 0 :(得分:2)
我发现了问题:
compile 'com.squareup.okhttp:okhttp-urlconnection:2.5.0'
删除后一切正常。也许它会帮助某人