我是靠谱客的博主 笑点低草丛,最近开发中收集的这篇文章主要介绍为什么Spring MVC访问jsp页面报错,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

        问题背景:按照教程配置Spring MVC的简单样例,在Controller方法中返回要访问的jsp页面,总是提示如下的错误:

org.springframework.web.servlet.DispatcherServlet noHandlerFound
警告: No mapping found for HTTP request with URI [/SpringMVCTest/WEB-INF/views/test.jsp] in DispatcherServlet with name 'appServlet'

问题分析:从错误提示的含义来看,是该请求被投递到“appServlet”处理,而appServlet中没有实现处理该请求的controller,导致报404错误。奇怪的是,为什么jsp文件需要投递到servlet去处理,照理说,应该是可以直接访问的。每个请求由什么内容来处理,是配置在web.xml中,查看web.xml配置如下:

	<servlet-mapping>
<servlet-name>appServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>

可以看出,问题关键在于appServlet的url-pattern我们配置了/*,它代表的含义是所有请求,包括静态资源和jsp文件。这显然不是我们的初衷

问题解决:把url-pattern配置为/,解决jsp页面访问不到的问题;/代表的是默认映射,当无法找到对应的servlet来处理该请求时,则由/对应的servlet来处理

	<servlet-mapping>
<servlet-name>appServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>


最后

以上就是笑点低草丛为你收集整理的为什么Spring MVC访问jsp页面报错的全部内容,希望文章能够帮你解决为什么Spring MVC访问jsp页面报错所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(80)

评论列表共有 0 条评论

立即
投稿
返回
顶部