[英]How to directly visit JSP pages with Spring loaded?
我想知道如何直接在WEB-INF
某个目录下访问JSP页面,而Spring在/
path上运行,而无需编写任何用于视图转发的控制器。
例如,我有一个项目myapp
结构如下:
src
WebRoot
`-- WEB-INF
|-- public
| `-- example.jsp
|-- views
现在,我想通过直接导航到http://localhost/myapp/public/example
而不使用任何控制器来访问example.jsp
。
到目前为止,我已经尝试过:
在我的上下文xml中添加了<mvc:resources mapping="/public/**" location="/WEB-INF/public/"/>
,但是它不起作用,容器不断抱怨HTTP 404 - PAGE NOT FOUND /public/example.jsp
。
在我的上下文xml中添加了一个内部资源视图解析器。
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix"> <value>/WEB-INF/</value> </property> <property name="suffix"> <value>.jsp</value> </property> </bean>
但是我不确定下一步该怎么做,我可能在/WEB-INF/public
下放置了许多JSP页面,因此为每个页面编写一个控制器将很繁琐。
有什么规范的方法可以做到这一点吗? 请帮忙!
春季mvc,我们有一个选项<mvc:view-controller path="/" view-name="example"/>
。
当您在浏览器中键入/时,这将重定向example.jsp页面
在调度程序servlet中尝试类似的操作:
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver"
p:prefix="/WEB-INF/jsp/"
p:suffix=".jsp" />
jsp文件夹包含您的jsp文件的位置。 您可以从控制器直接使用jsp名称。 您无需提及上述定义中的jsp文件夹。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.