Elimine el espacio en blanco de la salida jsp

¿Cómo puedo eliminar el espacio en blanco adicional de la salida de las páginas jsp? ¿Hay algún cambio que pueda cambiar en mi web.xml? ¿Hay alguna configuración específica de Tomcat?

Hay una directiva trimWhiteSpaces que debe lograr esto,

En tu JSP:

<%@ page trimDirectiveWhitespaces="true" %> 

O en la sección jsp-config su web.xml (tenga en cuenta que esto funciona a partir de la especificación de servlet 2.5):

   *.jsp true   

Desafortunadamente, si tiene un espacio requerido, también podría necesitar quitarlo, por lo que es posible que necesite un espacio sin interrupciones en algunos lugares.

Si su servletcontainer no admite la propiedad JSP 2.1 trimDirectiveWhitespaces , debe consultar su documentación JspServlet para conocer los parámetros de inicialización. En, por ejemplo, Tomcat , puede configurarlo también configurando trimSpaces init-param en true in para JspServlet en JspServlet de Tomcat:

  trimSpaces true  

Una alternativa completamente diferente es JTidyFilter . No solo recorta el espacio en blanco, sino que también formatea HTML en una sangría correcta.

El trimDirectiveWhitespaces solo es compatible con contenedores de servlets que soportan JSP 2.1 y después, o en el caso de Tomcat, Tomcat 6 (y algunas versiones, por ejemplo, Tomcat 6.0.10 no lo implementan correctamente, no conocen las demás). Hay más información sobre trimDirectiveWhitespaces aquí:

http://www.oracle.com/technetwork/articles/javaee/jsp-21-136414.html

y aquí

http://raibledesigns.com/rd/entry/trim_spaces_in_your_jsp1

No directamente lo que está pidiendo, pero lo que me ayuda es poner tags de comentarios HTML de una manera inteligente alrededor de mis tags jsp, y también poner espacios en blanco dentro de una etiqueta de servlet (<%%>):

 ${""}<% %><% %> 

Si usa tags, puede aplicar allí también:

 <%@ tag description="My Tag" trimDirectiveWhitespaces="true" %> 

Y en tu jsp:

 <%@ page trimDirectiveWhitespaces="true" %> 

Agregue / edite su archivo tomcat catalina.properties con

 org.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false 

Ver también: https://confluence.sakaiproject.org/display/BOOT/Install+Tomcat+7

Puede ir un paso más allá y también eliminar las nuevas líneas (retornos de carro) entre las tags html en tiempo de comstackción.

Por ejemplo, cambio

 

Hello

How are you?

dentro:

 

Hello

How are you?

Haz eso, utiliza el maven-replacer-plugin y pom.xml en pom.xml :

  com.google.code.maven-replacer-plugin replacer 1.5.3   stripNewlines prepare-package  replace   ${project.build.directory} projectname/WEB-INF/jsp/**/*.jsp >\s*< ><  MULTILINE      

Esto solo modificará las JSP en el directorio de construcción, y no tocará las JSP en sus fonts.

Es posible que necesite adaptar la ruta ( ) donde se encuentran sus JSP.