можно ли вставлять комментарии в мои .xhtml-файлы, которые отображаются только в исходном коде, а не в результате рендеринга? Я хочу включить автора, дату,... в файлы, но они не должны быть видны конечному пользователю в сгенерированном выводе. Если я использую стандартные теги комментариев <!-- -->
, браузер их отображает.
Невидимые комментарии в jsf 2.0?
Ответы (3)
Добавьте следующее в свой web.xml
:
<context-param>
<param-name>javax.faces.FACELETS_SKIP_COMMENTS</param-name>
<param-value>true</param-value>
</context-param>
Таким образом, Facelets
будет пропускать комментарии при разборе шаблона представления xhtml
.
Невидимые комментарии в JSF — это недостаток, особенно для новичков. Я согласен с ответом г-на Минчева. В любом случае, я предлагаю альтернативный способ комментирования контента в JSF, состоящий из использования ui:remove.
<ui:remove> This is a comment </ui:remove>
Тег UI Remove используется для указания тегов или блоков контента, которые должны быть удалены с вашей страницы обработчиком представления Facelets во время компиляции. Этот тег не имеет атрибутов. Вы можете использовать этот тег, чтобы указать, что конкретный тег должен быть удален с отображаемой страницы.
Полезно удалять контент, который требуется во время время разработки, но не во время выполнения время, такое как комментарии, некоторое заглушенное содержимое (например, «lorem ipsum»), которое помогает заполнить содержимое страницы, чтобы оно соответствовало макету в визуальных дизайнерах, таких как Dreamweaver, и т. д.
См.: Практические последствия Facelets ui:remove tag
Обратите внимание, что процесс компиляции Facelets намного быстрее, чем процесс компиляции JSP, потому что байт-код Java фактически не генерируется и не компилируется за кулисами, когда вы впервые посещаете свою страницу. Тег UI Remove используется для указания тегов или блоков контента, которые должны быть удалены с вашей страницы обработчиком представления Facelets во время компиляции. Этот тег не имеет атрибутов.
Неправильно, правильный путь:
<context-param>
<param-name>facelets.SKIP_COMMENTS</param-name>
<param-value>true</param-value>
This work for me, javax.faces.FACELETS_SKIP_COMMENTS no!