? Intentando determinar dónde/cómo colocar hojas de estilo en la aplicación web desplegada en Tomcat 6 para que se pueda resolver el archivo styles.css. He intentado todo lo que puedo pensar sin éxito.¿Por qué Tomcat 6 no encuentra mi styles.css
Hice estas pruebas para encontrar el archivo pero poco ha sido exitoso.
1.) put css in-line with style attribute to verify text display green.
<div id="xxx" style="color:green;"> This worked.
Then I removed the attribute and
2.) moved it into a in-file <style></style> stmt in the jsp. This also worked.
I copied the css stmt into styles.css and disabled the in-line stmt in the jsp.
3.) added <link></link> stmts to file. I tried several path refs to the file.
And I put the file in several different directory locations to see where
it would get resolved. (none were found)
<link rel="stylesheet" type="text/css" href="styles.css">
<link rel="stylesheet" type="text/css" href="css/styles.css">
<link rel="stylesheet" type="text/css" href="/css/styles.css">
Using FireBug (css tab) I see the follow information for these links
* <link rel="stylesheet" type="text/css" href="styles.css">
this displays the src to index.html in the root dir
* <link rel="stylesheet" type="text/css" href="css/styles.css">
this displays the msg
Apache Tomcat/6.0.13 - Error report
HTTP Status 404
The requested resource() is not available.
* <link rel="stylesheet" type="text/css" href="/css/styles.css">
this displays
Failed to load source for: http://192.168.5.24:9191/css/clStyles.css
El contextPath es/microblog Y BasePath es http://192.168.5.24:9191/microblog
Aquí está el código de prueba que estoy utilizando.
estoy usando primavera 3. Tengo un simple JSP
- test.jsp -
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<html>
<head>
<base href="<%=basePath%>">
<link rel="stylesheet" type="text/css" href="styles.css">
<link rel="stylesheet" type="text/css" href="css/styles.css">
<link rel="stylesheet" type="text/css" href="/css/styles.css">
<style>
#Yxxx {color:green;}
</style>
</head>
<body>
<div id="xxx">
<h2>Test <%=path%> <%=basePath%></h2>
</div>
</body>
</html>
He colocado el archivo styles.css en muchas ubicaciones de directorio para ver donde podría resolverse pero parece que no se encuentra ninguno.
En Tomcat 6 la estructura de directorios desplegado explotado aplicación web
webapps/microblog
webapps/microblog/styles.css
webapps/microblog/index.html
webapps/microblog/css/styles.css
webapps/microblog/WEB-INF/css/styles.css
webapps/microblog/WEB-INF/jsp/admintest/styles.css
webapps/microblog/WEB-INF/jsp/admintest/test.jsp
Así cómo conseguir Tomcat 6 para resolver Css archivos?
Gracias a ambos. Esta información fue útil. Con sus cambios recomendados y un cambio en mi , (cambiando el patrón de/a * .html) esto está funcionando. Me gustaría entender por qué el cambio de patrón de url habilitó Tomcat para resolver los refs. ¿Puede alguien señalarme a un artículo o dar una explicación? Gracias de antemano. – user976831
Si asigna un servlet en '/', básicamente está anulando el servlet predeterminado de servletcontainer que se utiliza para todas las solicitudes que no coincide con el patrón de URL de todos los demás servlets declarados (por ejemplo, recursos estáticos como imágenes, CSS, JS , archivos de etc). En el caso de Tomcat, consulte http://tomcat.apache.org/tomcat-7.0-doc/default-servlet.html – BalusC