【发布时间】:2014-07-28 03:11:54
【问题描述】:
对于 Web 应用程序,我需要通过默认处理从我的 Web 应用程序开发树 ./js、./css 中的相应文件夹中提供所有 .js、.css 和所有图像。 所以任何网址都像
http://www.example.com/js/x.js
应该直接从战争中的静态文件中提供。
主 servlet 应该处理所有不属于上述的请求。 我需要能够处理类似的请求
http://www.example.com/PROJ/ELEM/WHATEVER
具有相同的唯一主 servlet。
所以我想我会在 web.xml 中这样做:
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/css/*,/js/*,/WEB-INF/*</url-pattern>
</servlet-mapping>
并像这样映射主 servlet 以在 JSP 文件中创建一些 JSTL 模块:
@WebServlet(urlPatterns="/*")
public class Main extends HttpServlet {
protected void processRequest(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
request.setAttribute("test", "ok");
request.getRequestDispatcher("/WEB-INF/index.jsp")
.forward(request, response);
}
}
当我这样做时,我最终会陷入递归循环。
有没有办法做到这一点?
【问题讨论】:
-
检查此链接:- stackoverflow.com/questions/870150/… 我认为它会帮助你。
-
@RahulJain 感谢您的建议。该问题的公认答案对我不起作用,但下一个(30+ 票)对我有用。您能否将其作为答案,以便我对其进行投票并进一步解释?谢谢
标签: java servlet-3.0