Este comportamiento también se puede eliminar en cierta medida configurando la propiedad JSP 2.1 trimDirectiveWhitespaces
en true
. Esto se puede activar en archivos individuales JSP por:
<%@page trimDirectiveWhitespaces="true" %>
O en todos archivos JSP por la siguiente entrada en web.xml
(que debe ser declarada Servlet 2.5!):
<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<trim-directive-whitespaces>true</trim-directive-whitespaces>
</jsp-property-group>
</jsp-config>
En el pre -JSP contenedores 2.1 o en contenedores JSP 2.1 que en realidad no es compatible con esto por algunas razones internas, como Tomcat, debe consultar su documentación JspServlet
para cualquier parámetro de inicialización. Por ejemplo, en Tomcat, se puede configurar, así estableciendo la trimSpaces
init-param de JspServlet
a true
en /conf/web.xml
de Tomcat:
<init-param>
<param-name>trimSpaces</param-name>
<param-value>true</param-value>
</init-param>
anotados deben ser que los enfoques tanto en realidad no el código HTML "reformatear" . En realidad solo recorta el espacio en blanco que queda en taglibs y scriptlets. También vea this Sun article. Así por ejemplo el siguiente ..
<ul>
<c:forEach items="${list}" var="item">
<li>${item}</li>
</c:forEach>
</ul>
..would básicamente terminan en
<ul>
<li>item1</li>
<li>item2</li>
<li>item3</li>
</ul>
Así, con doble muesca. En realidad se puede solucionar este reformateando el código como tal que las etiquetas JSP son la mitad sangría:
<ul>
<c:forEach items="${list}" var="item">
<li>${item}</li>
</c:forEach>
</ul>
pero creo que la JTidyFilter es más fácil aquí :)
muy fresco. ¡¡¡Gracias por la respuesta!!! – Freiheit
También me gustaría señalar que JTidyFilter aún es un poco difícil sin una versión formal. Debes descargarlo desde JTidy nightlies en: http://jtidy.sourceforge.net/nightly/ – Freiheit