jsf 2.0中的隐形评论?

Tim*_*Tim 18 jsf comments invisible facelets jsf-2

是否可以在我的.xhtml文件中嵌入注释,这些注释只显示在源代码而不是渲染结果中?我想在文件中包含author,date,...但它们不应该在生成的输出中对最终用户可见.如果我使用标准评论标签 <!-- -->,浏览器会显示它们.

Pet*_*hev 38

将以下内容添加到您的web.xml:

<context-param>
    <param-name>javax.faces.FACELETS_SKIP_COMMENTS</param-name>
    <param-value>true</param-value>
</context-param>
Run Code Online (Sandbox Code Playgroud)

这种方式Facelets将在解析视图xhtml模板时跳过注释.


小智 19

JSF中的隐形评论是一个缺点,特别是对于初学者.我同意Minchev先生的回答.无论如何,我提供了一种在JSF中评论内容的替代方法,包括使用ui:remove

<ui:remove> This is a comment </ui:remove>
Run Code Online (Sandbox Code Playgroud)

UI Remove标记用于指定在编译时由Facelets视图处理程序从页面中删除的标记或内容块.此标记没有属性.您可以使用此标记指示应从呈现的页面中删除特定标记.

删除设计时需要的内容非常有用,但在运行时不需要,例如注释,一些存根内容(例如"lorem ipsum"),它有助于填充页面内容以适应视觉设计器(如Dreamweaver)中的布局等

请参阅:Facelets的实际意义ui:删除标签

请注意,Facelets 编译过程比JSP编译过程快得多,因为当您第一次访问页面时,实际上不会在后台生成和编译Java字节码.UI Remove标记用于指定在编译时由Facelets视图处理程序从页面中删除的标记或内容块.此标记没有属性.

两个评论选项的示例