1

在我的应用程序 jsps 文件夹中的所有 jsp 页面中,我在 index.jsp 中给出了路径:<% response.sendRedirect(response.encodeRedirectURL("/Projectname/jsps/main.jsp")); %> 虽然 main.jsp 是显示但它不显示徽标、图形等 js 文件夹中的所有 js 和徽标文件与 jsps 和 WEB 平行-INF 文件夹。现在的结构是:ProjectName>WebContent>Company1,WEB-INF,index.jsp,jsps>here all jsp's

在 Company1 文件夹中包含一些 CSS 文件。但未显示图形。当所有 jsp 都在 Company1 文件夹中时,它工作正常。

4

1 回答 1

3

您称之为“图形”(图像、CSS 等)的“图形”不会加载到网络服务器中,而是通过简单的 HTTP 请求加载到网络浏览器中。相对 URL 是相对于当前请求 URL(如您在浏览器地址栏中看到的),而不是服务器端的文件夹结构。

为了计算出正确的相对 URL,您需要知道 JSP 页面和图像文件的绝对 URL。例如 http://example.com/jsps/page.jsphttp://example.com/images/image.gif。在这种情况下,与 JSP 页面相反,图像的相对 URL 将是一个文件夹,然后是文件名:../images/image.gif或者,您也可以使用域相对 URL,以斜杠开头:/images/image.gif

如果您使用 CSS 背景图像selector { background: url('foo.gif'); },那么您需要知道这些 URL 与 CSS 文件本身的 URL 相关,而不是与包含 CSS 文件的 JSP 页面相关。

如果您无法使用它,请更新您的问题以包含 JSP 页面和图像文件的绝对 URL,然后我们可以帮助您提取正确的相对 URL。

于 2010-10-27T13:12:11.207 回答