jsf 2.0 中的不可见评论? [复制]
Posted
技术标签:
【中文标题】jsf 2.0 中的不可见评论? [复制]【英文标题】:Invisible comments in jsf 2.0? [duplicate] 【发布时间】:2011-03-30 20:49:32 【问题描述】:是否可以将 cmets 嵌入我的 .xhtml 文件中,这些文件只显示在源文件中而不是呈现的结果中?
我想在文件中包含作者、日期、...,但最终用户在生成的输出中不应该看到它们。如果我使用标准评论标签<!-- -->
,浏览器会显示它们。
【问题讨论】:
【参考方案1】:将以下内容添加到您的web.xml
:
<context-param>
<param-name>javax.faces.FACELETS_SKIP_COMMENTS</param-name>
<param-value>true</param-value>
</context-param>
这样Facelets
将在解析视图xhtml
模板时跳过cmets。
【讨论】:
无变化。我的 jboss 5.1 仍然尝试在 cmets 之间运行内容。【参考方案2】:JSF 中不可见的 cmets 是一个缺点,特别是对于初学者。我同意 Minchev 先生的回答。无论如何,我提供了一种替代方法来评论 JSF 中的内容,包括使用 ui:remove
<ui:remove> This is a comment </ui:remove>
UI Remove 标签用于指定 Facelets 视图处理程序在编译时应从您的页面中删除的标签或内容块。这个标签没有属性。您可以使用此标记来指示应从呈现的页面中删除特定标记。
删除design time 期间需要的内容很有用,但在运行时不需要,例如 cmets、一些有助于填充页面内容以适应视觉布局的存根内容(例如“lorem ipsum”) Dreamweaver 等设计师。
见:Practical implications of Facelets ui:remove tag
请注意,Facelets编译过程比 JSP 编译过程快得多,因为当您第一次访问页面时,实际上并没有在后台生成和编译 Java 字节码。 UI Remove 标签用于指定 Facelets 视图处理程序在编译时应从页面中删除的标签或内容块。这个标签没有属性。
Examples of both comment options
【讨论】:
【参考方案3】:错了,正确的方法是:
<context-param>
<param-name>facelets.SKIP_COMMENTS</param-name>
<param-value>true</param-value>
这对我有用,javax.faces.FACELETS_SKIP_COMMENTS 不!
【讨论】:
问题是关于 JSF 2.x,而不是 1.x。 JSF 2.0 已经在 5 年前推出。也许是时候赶上?以上是关于jsf 2.0 中的不可见评论? [复制]的主要内容,如果未能解决你的问题,请参考以下文章