2010-07-02 3 views
1

Для многих внутренних проблем, которые не учитываются сейчас, у нас есть фильтр сервлета, который изменяет все результаты, которые являются application/xhtml+xml, и переписывает text/html;charset=UTF-8, поэтому даже используя фишки, он будет работать без проблем с IE 6.0.Написать пользовательский HtmlResponseWriter JSF

Мой вопрос находится на HtmlResponseWriter, который является компонентом, ответственным за рендеринг. Можно ли расширить его и переопределить его методы, чтобы мы достигли желаемого эффекта фильтра?

  • Тип контента всегда будет выводиться как текст/html;
  • Кодирование всегда будет UTF-8;
  • Тег сценария будет обернут внутри < ! -- <[[CDATA ]]> -->.

Заранее спасибо.

+0

Где именно делает 'приложения/XHTML + xml' взялся? Стандартные JSF/Facelets не выделяют это по умолчанию. Почему бы вам просто не исправить это прямо вместо переопределения рендеринга? – BalusC

+0

Здравствуйте, BalusC, шаблон содержит , чтобы включить cdata в javascript, но обманывая браузер (на самом деле IE-6), чтобы прочитать ответ как text/html. , так что все запросы, которые генерируют ответы text/html, обслуживаются как application/xhtml + xml, но фильтр устанавливает его в text/html. Я буду искать дополнительную информацию, чтобы лучше ответить на ваши соображения. –

+0

Я бы просто служил как «text/html» и переместил JS в свой собственный файл .js, который вы загружаете с помощью '