我有一个jsp,其url模式是/data/viewableImage.jsp
即使用户不包含网址的.jsp部分,url模式中是否还有一种方法可以调用jsp?
因此,如果他们导航到/ data / viewableImage,页面仍会被调用?
由于
答案 0 :(得分:0)
如果您将jsp页面放在像/WEB-INF
这样的公共路径中,则用户无法请求jsp页面,您可以使用Servlet添加jsp扩展名。
<servlet>
<servlet-name>data</servlet-name>
<servlet-class>com.mypackage.JSPAggregationServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>data</servlet-name>
<url-pattern>/data/*</url-pattern>
</servlet-mapping>
JSPAggregationServlet Servlet必须通过仅包含en .jsp扩展名将请求转发到JSP页面。
request.getRequestDispatcher("/WEB-INF" + request.getPathInfo() + ".jsp").forward(request, response);
示例:强>
Request /data/car/search
Response: /data/car/search.jsp