Wer mit JSP programmiert hat sicherlich bereits gemerkt, dass JSP je nach Tag viele Blanklines in dem output HTML-File generiert. Owohl das in den meisten Fällen nicht performancekritisch ist, ist es doch störend für das Auge. In Zeiten von Suchmaschinenoptimierung und notwendigkeiten von validem HTML kann es trotzdem interessant sein diese Leerschläge zu ersetzten. Hier ein Ansatz wie man das mit Tomcat (Ab Version 5.0) relativ einfach realisieren kann.
1. Zu Beginn unserer JSP-Seite fügen wir folgende Direktive ein:
1 | <%@page trimDirectiveWhitespaces="true"%> |
Dies bewirkt, dass alle unnötigen Leerschläge vor dem <html> enfternt werden.
2. Eine konfiguration des Tomcats schafft zudem Abhilfe, dass die Leerschläge innerhalb des <html>-Tag’s entfernt werden.
Dazu öffnen wir das File: %catalina_home%\ conf\web.xml
In diesem File gibt es folgenden Eintrag:
1 2 3 4 5 6 7 8 9 10 11 12 13 | <servlet> <servlet-name>jsp</servlet-name> <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> <init-param> <param-name>fork</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>xpoweredBy</param-name> <param-value>false</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet> |
Diesem Servlet fügen wir nun folgenden Request-Parameter hinzu:
1 2 3 4 | <init-param> <param-name>trimSpaces</param-name> <param-value>true</param-value> </init-param> |
Nun wird sogenanntes pretty-HTML ausgegeben.
Danke für diesen Beitrag. Diese Tomcat-Einstellung hat mich, v.a. beim Entwickeln, massiv gestört, wenn ich schnell mal etwas im Code kontrollieren wollte.
Der erste Tipp mit der Direktive funktioniert prima. Die Einstellungen in der web.xml zeigt bei mir allerdings keine Veränderung.. Stört aber nicht weiter, da zumindest eine der beiden Lösungen funktioniert.