为什么Spring MVC访问jsp页面报错
2014-03-20 18:13
267 查看
问题背景:按照教程配置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配置如下:
可以看出,问题关键在于appServlet的url-pattern我们配置了/*,它代表的含义是所有请求,包括静态资源和jsp文件。这显然不是我们的初衷
问题解决:把url-pattern配置为/,解决jsp页面访问不到的问题;/代表的是默认映射,当无法找到对应的servlet来处理该请求时,则由/对应的servlet来处理
<servlet-mapping>
<servlet-name>appServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
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 jersey 直接访问jsp页面
- 初识 struts2-为什么我访问不了 WEB-INF 下面的 jsp 页面
- spring mvc中直接访问jsp页面
- 页面访问时发生错误: java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config
- 记录-springMVC访问web-inf下文件问题+在jsp页面导入jquery插件路径不对问题
- jsp页面某些元素会不正常的显示出来,post访问会二次加载项目名
- tomcat5发布后,jsp目录不能访问,但是目录里面的页面可以访问
- jetty访问jsp页面出现PWC6345: There is an error in invoking javac. A full JDK (not just JRE) is required
- jetty访问jsp页面出现(PWC6345: There is an error in invoking javac)
- 多个浏览器访问同一个jsp页面
- spring3 jsp页面使用<form:form modelAttribute="xxxx" action="xxxx">报错,附连接数据库的spring MVC annotation 案例
- 错误:浏览器访问jsp页面,却变成了下载该页面
- javaee项目开发中为什么将jsp页面放到WEN-INF下
- 直接访问WEB-INF目录下的JSP页面的方法
- jsp页面访问Struts1的Action路径问题
- Java小项目中WEB-INF下jsp页面如何访问?
- 在jsp页面使用session来验证未经登录的访问 并完成直接跳转
- 【Head First Servlets and JSP】笔记15:建立一个JSP页面来显示被访问了多少次
- Springboot访问jsp页面但是却变成下载该页面
- spring-mvc无法访问jsp页面的问题