1

我尝试通过扩展TagSupport. 我想使用自定义标记在也使用 RichFaces 和 JSF 的 xhtml 文件中呈现一些 html。

我看到的所有关于您在jsp页面中注册的自定义标签的教程:

 <% taglib prefix="example" tagdir="/WEB-INF/tag-descriptor.tld" %>

但是,这在 xhtml 文档中不起作用。我已经看到了基于 xhtml 片段的自定义 xhtml 标记,但我确实需要代码中的逻辑。

那么如何在jsf中注册一个jsp标签库呢?这可能吗?如果没有,是否可以像使用 jsp 一样在 xhtml 页面中编写 java 脚本?

4

1 回答 1

4

对于 Facelet (.xhtml),您不能注册 JSP 标记库。

javax.servlet.jsp.tagext.TagSupportFacelets 是一种与 JSP 完全不同的技术,并且在涉及特定于每种技术的工件(例如)时,这两种技术在任何方面都不兼容。

但是,JSF 的自定义 JSP 标记背后是一个组件,您当然可以在 Java 中为 Facelets 编写这些标记。它归结为直接在 Java 中创建一个组件,然后将其注册到一个*-taglib.xml(对于 JSF 2.2,不再需要在 XML 文件中进行此注册)。

有关详细信息,请参阅基于简单 Java 的 JSF 自定义组件

于 2012-11-25T09:24:04.753 回答