2010-11-21 2 views
11

Я использую JSF 2.0 и определил свойство javax.faces.FACELETS_SKIP_COMMENTS, чтобы пропустить комментарии в коде JSF, потому что есть много других кодов, разглашение комментариев и т. Д. Но мне нужно напечатать некоторые комментарии HTML в браузере клиента, например. для определения альтернативной условной таблицы стилей для других браузеров.JSF-дисплей HTML-комментарий

Пожалуйста, есть способ, как это сделать? Потому что все мои попытки потерпели неудачу.

ответ

5

Используйте <ui:remove> для удаления комментариев вместо параметра контекста.

+0

Да, я знаю об этом, но это действительно неудобно, особенно если я считаю количество комментариев, которые не должны отображаться в HTML, и что у меня есть существующий проект. – Gaim

+0

Извините, это не поможет. Просто откройте все файлы в немного приличном текстовом редакторе с помощью функции «Найти и заменить во всех файлах», например Ultraedit, Notepad ++ и Editplus. Замените '' by '->'. Не должно занимать больше нескольких минут. – BalusC

+0

Okey, спасибо за совет. Это, вероятно, единственное возможное решение :-( – Gaim

8

Это грубо, но он работает (в JSF 1.2 в любом случае не испытанный в 2)

<h:outputText value="&lt;!--" escape="false" /> My comment <h:outputText value="--&gt;" escape="false" /> 
+0

+1 Интересная идея – Gaim

+1

Хорошая идея, действительно, у меня теперь есть проблема с jsf-тегами внутри комментария, например, css call for ie, я работаю с ним –

5

Может быть, вы могли бы использовать F: дословный:

<f:verbatim>&lt;!--[if lt IE 7]&gt; 
    Something just for lower than IE7 
&lt;![endif]--&gt;</f:verbatim> 
1

на основе @ Хуан и @ reevesy-х идеи это одна:

<f:verbatim>&lt;!-- 
    This is a happy HTML comment :) 
--&gt;</f:verbatim> 

Который воздаст:

<!-- 
    This is a happy HTML comment :) 
-->