【问题标题】:web.xml and relative pathsweb.xml 和相对路径
【发布时间】:2010-09-14 19:04:06
【问题描述】:

在 web.xml 中,我将欢迎文件设置为 web.xml 中的 jsp

<welcome-file>WEB-INF/index.jsp</welcome-file>

在 index.jsp 中,我然后转发到一个 servlet

<% response.sendRedirect(response.encodeRedirectURL("myServlet/")); %>

但是应用程序试图在以下路径中找到 servlet

applicationName/WEB-INF/myServlet

问题是 web-inf 不应该在路径中。如果我将 index.jsp 从 web-inf 中移出,那么问题就来了,但是还有其他方法可以解决这个问题吗?

【问题讨论】:

    标签: deployment tomcat web.xml descriptor


    【解决方案1】:
    <% response.sendRedirect(response.encodeRedirectURL("/myServlet/")); %>`
    

    因为 jsp 是从 WEB-INF 目录提供的,所以 servlet url 也是从该相对路径解析的。在之前添加 / 将从上下文根中解析 url

    【讨论】:

      【解决方案2】:

      据我了解,WEB-INF 是一个特殊文件夹,其中包含 JSP 使用的配置和类,您不应该将用于直接服务的代码放入其中。

      不管怎样,你试过 /myServlet 吗?

      【讨论】:

        【解决方案3】:

        你试过用绝对路径来做吗?

        response.sendRedirect(response.encodeRedirectURL("/myServlet/"));
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2010-09-15
          • 2011-03-17
          • 2013-07-14
          • 2010-12-17
          • 1970-01-01
          • 1970-01-01
          • 2011-06-30
          • 1970-01-01
          相关资源
          最近更新 更多