这个问题已经在这里有一个答案:
- 如何DispatcherServlet的,Resolver和控制器互动? 2个回答
我在我的Spring MVC应用程序有问题。
该问题只发生在Linux服务器上,本地(窗口7 +蚀),一切工作正常。
当我进入我的页面, 该控制器被称为但是当服务器服务于jsp页面,我有:
HTTP Status 500 - Could not get RequestDispatcher for [/WEB-INF/pages/index.jsp]: Check that the corresponding file exists within your web application archive!
该文件存在,该路径是好的。
这里从我的web.xml中提取
<servlet>
<servlet-name>cms-admin-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>cms-admin-dispatcher</servlet-name>
<url-pattern>/do/*</url-pattern>
</servlet-mapping>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/cms-admin-dispatcher-servlet.xml</param-value>
</context-param>
我的servlet调度:
<bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/pages/" />
<property name="suffix" value=".jsp" />
</bean>
我试图通过*。html的来代替我的/ DO / *模式,但没有任何改变。 我也试图把我的JSP WEB-INF之外。
我试过了 :
<servlet>
<servlet-name>jsp</servlet-name>
<jsp-file>/WEB-INF/pages/index.jsp</jsp-file>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>jsp</servlet-name>
<url-pattern>/toto</url-pattern>
</servlet-mapping>
这样的作品,jsp页面加载但不是资源。
其他的事情,我无法直接访问任何js文件(资源/ JS / logs.js,在WEB-INF之外)。 我得到了404,当地我得到我的文件。
我非常不知道在哪里,这是从哪里来的,再次,它完美的作品对我的地方。 Tomcat的配置是很常见的。 所以感谢您事先的任何想法。