2013-05-15 46 views
0

我有一些問題訪問我的CSS文件。我搜索了,但我無法弄清楚什麼是不正確的。無法訪問我的CSS我的CSS文件

的web.xml:

<servlet-mapping> 
    <servlet-name>spring</servlet-name> 
    <url-pattern>*.mvc</url-pattern> 
</servlet-mapping> 

我的JSP:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" 
pageEncoding="ISO-8859-1"%> 
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%> 
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<title>Portail web </title> 
<link rel="stylesheet" type="text/css" 
href="../GN/css/portail.css" /> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
</head> 
<body> 
<h1>TEST</h1> 
</body> 
<html> 

我的CSS:

@CHARSET "ISO-8859-1"; 
body 
{ 
background-color:blue; 
} 

我的架構:

JSP爲:webapp/WEB-INF/FR/JSP/portail.jsp

CSS是:webapp/WEB-INF/GN/css/portail.css

我想絕對路徑過,但沒有工作(不加我的JSP的風格)。

謝謝。

編輯:

如果我做<%@ include file="/WEB-INF/GN/css/portail.css"%>它打印出我的CSS,因此該路徑是好的,但風格並不適用於我的jsp:/

回答

0

../GN/css/portail.cssFR/GN/css/portail.css而不是GN/css/portail.css

嘗試../../GN/css/portail.css

(如果您直接訪問您的jsp,但可能是從具有不同url的操作轉發)

+0

是的,對不起,這是進行測試,這是../../GN,但它不工作也沒有。我用我的控制器訪問我的jsp @RequestMapping(「/ portail.mvc」)? – MinionKing

+0

你用'GN/css/portail.css'試過了嗎?如果您的映射路徑位於您的web應用程序的根目錄下 – gma

2

這是從Web服務器請求文件的Web瀏覽器。你的頁面根本不直接訪問這些文件。 WEB-INF/裏面的所有文件都不是可公開訪問。

你有兩種可能的解決方案:

  1. 移動的.js和.css文件的WEB-INF之外/

  2. 或者使用下面的映射:

    的web.xml (Spring 3.0.3+)

<servlet> 
    <servlet-name>default</servlet-name> 
    <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class> 
    <init-param> 
    <param-name>debug</param-name> 
    <param-value>0</param-value> 
    </init-param> 
    <init-param> 
    <param-name>listings</param-name> 
    <param-value>false</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

<servlet-mapping> 
    <servlet-name>default</servlet-name> 
    <url-pattern>/static/*</url-pattern> 
</servlet-mapping> 

在JSP中使用路徑/static/js//static/css/

+0

/WEB-INF/GN/css/portail.css是正確的絕對路徑。但我的路徑是正確的,我敢肯定,它打印出我的css文件,如果我做<%include%> .. – MinionKing

+0

「WEB-INF /內部的所有文件不公開訪問」和「將.js和.CSS文件移動到WEB- INF /「幾乎是解決方案! – ederollora