【问题标题】:Request Dispatcher does not load the stylesheet file in jspRequest Dispatcher 没有在 jsp 中加载样式表文件
【发布时间】:2014-10-27 22:49:51
【问题描述】:

我有一个 HTML 页面,它从用户那里获取用户名和密码并将其发送到 servlet。如果两者都正确,则 servlet 分派到 JSP 页面。

RequestDispatcher rD = request.getRequestDispatcher("dynamic/faculty/updatefaculty.jsp");
        rD.forward(request, response);

我分别检查了所有页面,所有页面都正常工作。 CSS 文件 在jsp中加载,但是当我使用dispatch时,CSS文件没有在JSP中加载。

当然,我从 NetBeans 中的 BrowserLog 收到以下内容

Failed to load resource: the server responded with a status of 404 (Not Found) (04:11:01:478 | error, network)
 at http://localhost:8080/css/forms.css

【问题讨论】:

    标签: css jsp requestdispatcher


    【解决方案1】:

    对于动态页面,您必须使用以下格式:

    link href="${pageContext.request.contextPath}/css/sample.css"

    静态响应没有值,请使用以下格式。这将盲目地重定向。 response.sendRedirect("sample.jsp");

    【讨论】:

      【解决方案2】:

      为了简化您的需求:

      更改您的 updatefaculty.jsp

      发件人:<link rel=stylesheet type="text/css" href="/css/forms.css">

      收件人:<link rel=stylesheet type="/text/css" href="<%= request.getContextPath() %>/css/forms.css">

      或者:<%= request.getContextPath() %> -> ${pageContext.request.contextPath}


      说明: 使用这个 - 您将允许 XYZ.jsp(无论您来自哪个 Web servlet)将 form.css 文件加载到您的页面。你仍然可以继续使用 RequestDispatcher.forward(request, response) 因为(我可能认为)你需要它来传递一些属性。

      【讨论】:

        【解决方案3】:

        你可以试试这个,而不是使用 dipatcher

        response.sendRedirect("dynamic/faculty/updatefaculty.jsp");
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-03-31
          • 1970-01-01
          • 2018-07-22
          • 1970-01-01
          • 1970-01-01
          • 2016-11-25
          • 2014-11-03
          • 2021-06-09
          相关资源
          最近更新 更多