我正在使用InternalResourceViewResolverSpring 来呈现存在于/WEB-INF/view. 我也在视图中使用 JSTL。现在问题出现在更改in<url-pattern>之后。DispatcherServletweb.xml
我试图通过它获取 servlet 路径,${pageContext.request.servletPath}但它返回/WEB-INF/view/skel/welcome.jsp的是 WEB-INF 目录的路径,而request.getServletPath()返回/h2o的是控制器 Java 代码内部。<% out.print(request.getServletPath()); %>也在/WEB-INF/view/skel/welcome.jsp视图文件 ( /WEB-INF/view/skel/welcome.jsp) 中返回。
它似乎来自控制器 Java 代码和 JSP 视图文件中的请求实例之间的差异。请求是org.apache.catalina.core.ApplicationHttpRequestJSP 视图文件中的实例,但它是org.apache.catalina.connector.RequestFacade控制器 Java 代码中的实例。
到目前为止,幸运的是,我们单独安装它,不需要关心<uri-patter>或 servlet 路径。但是这个项目需要与其他系统集成,因此从视图文件中获取 servlet 路径以映射某些菜单或表单操作目标的正确 URL。
您是否知道/h2o从视图文件中获取正确的 servlet 路径()?