我对 Spring MVC 视图解析器不太熟悉。我试图从我的控制器返回一个 JSP。
我的控制器方法正在正确执行,但是当返回视图时,我得到404 -The requested resource is not available
error.
这是我的条目servlet-context.xml
file
<beans:bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<beans:property name="prefix" value="/WEB-INF/views/" />
<beans:property name="suffix" value=".jsp" />
</beans:bean>
这就是我定义资源结构的方式
webapp
--WEB-INF
--views
--shop
--common
--cart
myjsp.jsp
这就是我从控制器返回 JSP 视图的方式
private final static String MYVIEW="shop/common/cart/myjsp";
@RequestMapping(value={"/shop/myMethod.html"}, method = RequestMethod.GET)
public String myMethod(HttpServletRequest request, Model model){
return MYVIEW;
}
这是我的应用程序主页 URL
http://localhost:7777/my-shop/shop/
不知道我哪里做错了。
Edit我们正在使用带有 spring 的 Tiles,并且已经看到了这些附加信息
<beans:bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<beans:property name="viewClass">
<beans:value>org.springframework.web.servlet.view.tiles2.TilesView</beans:value>
</beans:property>
</beans:bean>
<beans:bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
<beans:property name="definitions">
<beans:list>
<beans:value>/WEB-INF/tiles/tiles-admin.xml</beans:value>
<beans:value>/WEB-INF/tiles/tiles-shop.xml</beans:value>
</beans:list>
</beans:property>
</beans:bean>
不确定如何添加额外的视图解析器?
error
请求的资源(/my-shop/WEB-INF/views/shop/common/cart/myjsp.jsp)
不可用。
我又记下了一件奇怪的事情,下面的几个JSPWEB-INF/views
可以访问,但是当我将新的 JSP 放在同一位置时,它无法正常工作并给出相同的错误。