使用JSP,而无需为其定义servlet映射



是否有一种方法可以通过仅从servlet向其派遣来与JSP一起使用,而在Web.xml中没有 <servlet-mapping>映射到jspservlet(tomcat 7)?

我想构建一个使用控制器servlet处理输入并执行处理并最终交给JSP进行渲染的WebApp;即经典的MVC模式。

因此,servlet包括(或向前转到)

的JSP
request.getRequestDispatcher( "/view.jsp" ).include( request, response );

为了完成这项工作,似乎没有其他方法在Web.xml中拥有将"/view.jsp"映射到JSPSERSERT的<servlet-mapping>。(无论该映射是什么。)

关键问题:是否有一种方法可以使用JSP,而无需通过servlet映射暴露它们?如果映射了JSP,则可能会直接向其请求,应避免。视图JSP如果直接调用将不起作用,丢失了由控制器servlet。

没有任何框架。

从我记得的标准方法中,阻止用户直接访问服务器上的资源(例如JSP),但同时允许服务器访问它们是将它们放置在WEB-INF文件夹中。因此,您可以尝试更像

request.getRequestDispatcher( "/WEB-INF/views/view.jsp" ).include( request, response );

最新更新