Я создал два проекта Netbeans, и оба имеют одинаковую конфигурацию в web.xml:
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
Оба имеют следующую структуру каталогов для файла CSS:
<Root>\src\main\webapp\resources\css\styles.css
В шаблоне facelets в разделе <h:head>
оба имеют
<h:outputStylesheet name="styles.css" library="css" />
Если я распакую их соответствующие файлы .war, у обоих будет
<root>\resources\css\styles.css
Когда я запускаю эти веб-приложения и просматриваю веб-страницу через firebug, оба используют:
<root>javax.faces.resource/styles.css.xhtml
Теперь НО: один находит файл CSS, а другой нет. Что мне здесь не хватает?
Обновление : Согласно комментариям, я проверил вкладку Net в Firebug проекта, где CSS не работает. Запрос / ответ CSS находится внутри вкладки HTML, а не вкладки CSS, а заголовок ответа имеет Content-Type: text/html;
, а тело ответа - это вся веб-страница, а не просто CSS, как в рабочем проекте!
Заголовки запроса:
Host: mike-
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:6.0.2) Gecko/20100101 Firefox/6.0.2
Accept: text/css,*/*;q=0.1
Accept-Language: en-us
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection: keep-alive
Referer: http://mike-6:8080/root/
Cookie: JSESSIONID=fa60fb0becd860721422cad79e09
Заголовки ответа:
X-Powered-By: Servlet/3.0 JSP/2.2 (GlassFish Server Open Source Edition 3.1.1 Java/Sun Microsystems Inc./1.6), JSF/2.0
Server: GlassFish Server Open Source Edition 3.1.1
Pragma: No-cache
Cache-Control: no-cache
Expires: Wed, 31 Dec 1969 18:00:00 CST
Content-Type: text/html;charset=UTF-8
Transfer-Encoding: chunked
Date: Mon, 19 Sep 2011 03:06:22 GMT
Тело ответа:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link type="text/css" rel="stylesheet" href="/MyBills/javax.faces.resource/themes/sam/theme.css.xhtml?ln=primefaces&amp;v=3.0.M2" />
<link type="text/css" rel="stylesheet" href="/MyBills/javax.faces.resource/styles.css.xhtml?ln=css" />
</head>
<body>
/* body is entire web page */
</body>
</html>