从WEB-INF内的JSP访问资源

时间:2014-04-21 10:16:01

标签: java html eclipse jsp servlets

我无法访问存储在WEB-INF中的JSP中的某些图像和css文件。我的servlet调用JSP并且所有加载都很好,但页面无法找到图像和css文件。我对这种事情很陌生,并会很感激帮助。我知道过去有一些问题,我已经尝试过那些提出的建议,但我似乎无法理解它。这是JSP的内容(我尝试了一些不同的方法):

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Title</title>
<link rel="stylesheet" type="text/css" href="resources/grid.css">   
</head>
<body>  
<!-- Main container -->
<div class="container_12"></div>

<!-- Foreground container -->
<div class="grid_10 prefix_1 suffix_1">

    <img src = "/resources/images/Foreground.png">

</div>

<!-- Header container -->
<div class = "grid 8 prefix_2 suffix_2">

    <img src = "${pagecontext.request.contextPath}/resources/images/Header.png">
    <p>Test</p>

</div>

<div class = "clear"></div>

<!-- Navigation bar container -->
<div class = "grid 8 prefix_2 suffix_2">

    <img src = "${pagecontext.request.contextPath}/resources/images/Navbar.png">

</div>

 </body>
 </html>

这是我的目录结构:

http://gyazo.com/0a7aea0a44e51e1789c263767e14a40b

2 个答案:

答案 0 :(得分:0)

您可以使用以下内容查找图像的真实路径。

<!-- Header container -->
<div class = "grid 8 prefix_2 suffix_2">

    <img src = "<%= application.getRealPath("/resources/images/Header.png") %>">
    <p>Test</p>

</div>

答案 1 :(得分:0)

将所有文件或css图像放在WEB-INF文件夹之外。优秀的做法是在WEB-INF中只放置类和web.xml。

相关问题