springmvc 报无法解析视图异常

博客内容提到,前端nginx日志显示某些URL请求返回500状态码,异常信息显示为无法在名为'Spring MVC Dispatcher Servlet'的servlet中解析视图'xxxx'。问题出在Spring MVC尝试解析类似/xxx/xxx.jpg的URL,但项目中未配置处理这些带后缀的资源。由于找不到对应的View解析器,导致404错误升级为500错误。解决方案是增加一个默认的ViewResolver来处理这种情况。
摘要由CSDN通过智能技术生成

        最近,前端nginx的日志一直在报一些URL的请求后端响应是500状态码,于是缓存其结果,可以看到一直是报一个 javax.servlet.ServletException: Could not resolve view with name 'xxxx'in servlet with name 'Spring MVC Dispatcher Servlet ‘的异常。

        分析这些报这个异常的的URL,规则都是/xxx/{xxx},报错的URL都是类似于 /xxx/xxx.jpg之类的跟着后缀的,我们的资源内容中也就是这个路由是对应的是没有这个jpg的资源的,也就是说自然会是404,但是404竟然也报这个异常和500错误码。

        看了springmvc关于这个异常的出处,很明显的是View为null,而view是由resolveViewName获得的。

protected void render(ModelAndView mv, HttpServletRequest request, HttpServletResponse response) throws Exception {
		// Determine locale for request and apply it to the response.
		Locale locale = this.localeResolver.resolveLocale(request);
		response.setLocale(locale);

		View view;
		if (mv.isReference()) {
			// We need to resolve the view name.
			view = resolveViewName(mv.getViewName(), mv.getModelInternal(), locale, request);
			if (view &#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值