为了账号安全,请及时绑定邮箱和手机立即绑定

抛出一个 Error resolving template template might not exist or might not be accessible 的异常

在ajax的异常处理中,直接返回IMoocJSONResult是不行的,会再抛出一个

Error resolving template template might not exist or might not be accessible 的异常,而不是我们预想的byZero的异常,这时候需要使用MappingJackson2HttpMessageConverter把IMoocJSONResult手动写入 HttpServletResponse中。

 

private static final String ERROR_VIEW = "error";

@Autowired

private MappingJackson2HttpMessageConverter jsonConverter;

   

@ExceptionHandler(value = Exception.class)

public Object error(HttpServletRequest request, HttpServletResponse response, Exception e) throws HttpMessageNotWritableException, IOException {

if(isAjax(request)) {

MyJSONResult result = MyJSONResult.errorException(e.getMessage());

            jsonConverter.write(result, MediaType.APPLICATION_JSON, new ServletServerHttpResponse(response));

            return null;

} else {

ModelAndView mav = new ModelAndView();

mav.addObject("exception",e);

mav.addObject("url", request.getRequestURL());

mav.setViewName(ERROR_VIEW);

return mav;

}

}


正在回答

13 回答

学了了,我就说我的代码一模一样,结果缺不一样

0 回复 有任何疑惑可以回复我~

一群人自以为懂了,瞎带节奏

0 回复 有任何疑惑可以回复我~

大佬牛逼,我还郁闷为啥视频的跑得起来呢,还特意从github下载了源码

0 回复 有任何疑惑可以回复我~

尽信书不如无书,这哥们的是对的。

0 回复 有任何疑惑可以回复我~

老师的虽然跑起来了,但是alert输出的结果不对,然后就不讲了,这哥们的才是对的。

0 回复 有任何疑惑可以回复我~
@RestControllerAdvice

试试

0 回复 有任何疑惑可以回复我~

https://img1.sycdn.imooc.com//5be6a23500011ddf13510426.jpg这个是我的ajax

0 回复 有任何疑惑可以回复我~

我能成功啊 不知道你这个异常怎么来的

0 回复 有任何疑惑可以回复我~

学习了,但是不知道为啥老师的代码能够跑成功,我反复看了几遍以为他加了什么特殊配置,然而并没有找到。。。

0 回复 有任何疑惑可以回复我~

你是对的。。。


0 回复 有任何疑惑可以回复我~
首页上一页12下一页尾页

举报

0/150
提交
取消

抛出一个 Error resolving template template might not exist or might not be accessible 的异常

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信