StripFilter в Liferay 6.1.1 GA2 не удаляет пробелы

#liferay #servlet-filters

#liferay #фильтры сервлетов

Вопрос:

Мы используем свойство StripFilter в наших производственных системах:

 com.liferay.portal.servlet.filters.strip.StripFilter=true
  

но на большинстве страниц разметка удалена неправильно (некоторые части, такие как навигация, содержат огромные пробелы, другие, такие как заголовок, в порядке) или, в худшем случае, вся разметка не удалена!

Эти не разделенные страницы содержат до 20 тысяч строк исходного кода (в основном пустых), что приводит к снижению производительности браузеров.

В основном появляется, когда страницы запрашиваются от имени гостевого пользователя, но это невозможно воспроизвести. Эта проблема возникает также, когда мы отменяем развертывание всех веб-приложений.

Как мы можем исследовать эту проблему? Это распространенная проблема?

Ответ №1:

Если какая-то часть начала вашей страницы действительно удалена, а остальная часть нет, то фильтр сработал над вашим html. Возможно, у вас ошибка в вашем html-коде. Или полоса была просто слишком глупой.

Помните, что вы должны (из-за фильтра) закрывать теги ввода с помощью /> Если вы этого не сделаете, фильтр найдет следующий /> и не удалит ничего между ними!

Пример

 <input name="bla">    
<p> hello      world,  
<br /> 
<span> you are </span>  
           beautiful. </p> 
  

Это приведет к следующему выводу, поскольку
закрывает

 <input name="bla">    
<p> hello      world,  
<br /><span>you are</span> beautiful. </p>  
  

Комментарии:

1. К сожалению, нет. Все это не удалено. Перед определением doctype есть даже пробел.

2. Происходит ли это только на первой странице (например, / web/bla / ) или на всех страницах? Наша текущая настройка имеет проблемы только с главной страницей