Apache 2.1.4 Azulejos con CSS
-
19-09-2019 - |
Pregunta
Estoy usando Apache 2.1.4 Azulejos con Spring MVC 3. He conseguido configurar estos juntos y todo funciona bien. Mi siguiente paso es añadir CSS y aquí es donde yo estoy teniendo un problema -. Esto es muy probablemente una simple pero no puedo conseguir mi plantilla JSP para recoger el css
Fragmento de mi azulejos-defs.xml
<definition name="baseLayout" template="/WEB-INF/tiles/baseLayout.jsp">
<put-attribute name="title" value="Template"/>
<put-attribute name="header" value="/WEB-INF/tiles/header.jsp"/>
<put-attribute name="styles" value="base.css"/>
<put-attribute name="subheader" value="/WEB-INF/tiles/subheader.jsp"/>
<put-attribute name="menu" value="/WEB-INF/tiles/menu.jsp"/>
<put-list-attribute name="bodyItems">
<add-attribute value="/WEB-INF/tiles/body.jsp"/>
</put-list-attribute>
Fragmento de mi plantilla JSP (baseLayout.jsp)
<link type="text/css" rel="stylesheet" href="<%=request.getContextPath()%>/WEB-INF/css/displayTagTable.css"/>
Fragmento de mi CSS:
body {
background-color: red;
}
he guardado la CSS lo más simple posible sólo para comprobar si mi jsp recoge el archivo css.
También he comprobado que mi archivo CSS está en la ubicación correcta - pero mi archivo JSP no está recogiendo el archivo css. Alguien puede ayudar?
Cualquier ayuda será muy apreciada.
Gracias, Zahanghir
Solución
Los archivos dentro de WEB-INF
no se sirven directamente a través de las direcciones URL públicas. La primavera y los azulejos son capaces de servir indirectamente archivos JSP de WEB-INF
programación.
¿Puede usted por favor, intente mover el directorio css en WebContent y actualizar el atributo de la etiqueta <link>
href
?
Después de obtener que el trabajo, tengo una sugerencia. Puede utilizar etiquetas Azulejos si se incluye esta directiva de página en la parte superior de las JSP:
<%@taglib prefix="tiles" uri="http://tiles.apache.org/tags-tiles"%>
Si lo desea, esto permite que almacene su camino CSS como un atributo en tiles-defs.xml
, y la recupere de las JSP con la etiqueta:
<link type="text/css" rel="stylesheet"
href="<tiles:getAsString name="IDENTIFIER_HERE"/>"/>
La URL de CSS reemplazará la etiqueta de azulejos. Y se podría utilizar este camino a través de las definiciones CSS varios mosaicos.
El resto de las etiquetas Azulejos están documentados aquí: Azulejos etiqueta de hoja de referencia