Удаление пробелов из вывода jsp

Как убрать лишние пробелы из вывода страниц 9X_whitespace jsp? Есть ли переключатель, который я могу 9X_apache-tomcat щелкнуть в моем web.xml? Есть ли специальная 9X_apache-tomcat настройка Tomcat?

117
0
7
Общее количество ответов: 7

Ответ #1

Ответ на вопрос: Удаление пробелов из вывода jsp

Для этого есть директива trimWhiteSpaces,

В 9X_jsp вашем JSP:

<%@ page trimDirectiveWhitespaces="true" %>

Или в разделе jsp-config ваш web.xml 9X_apache-tomcat (обратите внимание, что это работает, начиная 9X_jsp со спецификации сервлета 2.5.):


  
    *.jsp
    true
  

К сожалению, если 9X_apache-tomcat у вас есть необходимое пространство, может 9X_tomcat потребоваться его удаление, поэтому в некоторых 9X_tomcat местах может потребоваться неразрывное пространство.

181
2

  • А в пользовательских файлах .tag JSP используйте <% @ tag body-content = "scrip ...

Ответ #2

Ответ на вопрос: Удаление пробелов из вывода jsp

Если ваш контейнер сервлетов не поддерживает 9X_tomcat свойство JSP 2.1 trimDirectiveWhitespaces, вам необходимо проконсультироваться 9X_apache-tomcat с его документацией по JspServlet для любых параметров 9X_jsp инициализации. Например, в Tomcat вы также можете 9X_jsp настроить его, установив для trimSpaces init-param 9X_tomcat значение true для JspServlet в /conf/web.xml Tomcat:


    trimSpaces
    true

Совершенно другая 9X_apache-tomcat альтернатива - JTidyFilter. Он не только удаляет пробелы, но 9X_jsp также форматирует HTML с правильным отступом.

28
1

  • @ria: Обратите внимание, что вы должны понимать, что при этом удаляются только пробелы, оставленные библиотека ...

Ответ #3

Ответ на вопрос: Удаление пробелов из вывода jsp

trimDirectiveWhitespaces поддерживается 9X_tomcat только контейнерами сервлетов, которые поддерживают 9X_tomcat JSP 2.1 и более поздние версии, или в случае 9X_apache-tomcat Tomcat, Tomcat 6 (и некоторые версии, например 9X_apache-tomcat Tomcat 6.0.10, не реализуют его должным 9X_apache-tomcat образом - не знаю о других ). Дополнительную 9X_jsp информацию о trimDirectiveWhitespaces можно 9X_jsp найти здесь:

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

и здесь

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

4
0

Ответ #4

Ответ на вопрос: Удаление пробелов из вывода jsp

Не совсем то, о чем вы просите, но мне помогает 9X_apache-tomcat разумное размещение тегов комментариев HTML 9X_apache-tomcat вокруг моих тегов jsp, а также размещение 9X_apache-tomcat пробелов внутри тега сервлета (<%%>):

${""}<%

%><%
%>

4
0

Ответ #5

Ответ на вопрос: Удаление пробелов из вывода jsp

Если вы используете теги, вы также можете 9X_whitespace применить их:

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

И на вашем jsp:

<%@ page trimDirectiveWhitespaces="true" %>

4
0

Ответ #6

Ответ на вопрос: Удаление пробелов из вывода jsp

Вы можете пойти еще дальше и также удалить 9X_apache-tomcat символы новой строки (возврат каретки) между 9X_whitespace тегами html во время сборки.

Например, изменение:

Hello

How are you?

в:

Hello

How are you?

Сделайте 9X_tomcat это, используйте maven-replacer-plugin и настройте его в 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
                
            
        
    

Это 9X_whitespace изменит только JSP в каталоге сборки, но 9X_tomcat не затронет JSP в ваших источниках.

Возможно, вам 9X_apache-tomcat потребуется изменить путь (), в котором 9X_tomcat расположены ваши JSP.

1
0

Ответ #7

Ответ на вопрос: Удаление пробелов из вывода jsp

Используйте функцию обрезки, пример

fn:trim(string1)

9X_whitespace

1
0