【问题标题】:Where is the taglib definition of PrimeFaces 4?PrimeFaces 4 的 taglib 定义在哪里?
【发布时间】:2013-10-25 12:01:52
【问题描述】:

我正在寻找如何在 JSF 中定义自定义组件。根据 Java EE 教程,任何自定义组件都需要在 taglib 中进行描述。当我查看 PrimeFaces 源时,我找不到任何标记库文件或任何提示,其中命名空间被绑定并且可用组件被定义。我正在将 primefaces jar 添加到我的依赖项中,添加

xmlns:p="http://primefaces.org/ui

到 xml 命名空间,在我的页面上定义一些 primfaces 组件并且它可以工作......

好的,但是我无法在源代码或二进制包中找到相关的 taglib,我的 IDE (IntelliJ) 也无法找到“xmlns:p="http://primefaces.org/ui" 指向的位置。因此,代码补全也是不可能的。(所有其他mojarra标签库都找到了。)

PrimeFaces 是否有可能通过注释直接在 Java 类中定义标记库,还是在运行时生成它?我可以很容易地找到 UIComponents,primefaces 在其源代码中定义,但似乎缺少 taglib 的配置。我确定我只是不知道 PrimeFaces 是如何做到的,但是 javaeetutorial 没有描述任何其他机会,而不是定义一个 ...-taglib.xml

【问题讨论】:

    标签: java jsf-2 primefaces taglib


    【解决方案1】:

    好的,我发现配置是通过构建生成的,但是源的下载不包含构建脚本。

    通过 github,我找到了答案,它是在构建期间创建的(通过 maven)

    (https://github.com/primefaces/primefaces/blob/master/pom.xml)

    【讨论】:

      【解决方案2】:

      PrimeFaces 是否有可能通过注释直接在 Java 类中定义标记库,还是在运行时生成标记库? [...] 除了定义 ...-taglib.xml 之外,javaeetutorial 没有描述任何其他机会

      由于 PrimeFaces 4 与 JSF 2.2 兼容,理论上它可以做到这一点。也就是说,在 JSF 2.2/Java EE 7 中,确实可以通过注释直接定义 Facelets 标记。有关此的更多详细信息,请参阅:http://arjan-tijms.omnifaces.org/p/jsf-22.html#594

      由于 PrimeFaces 4 仍然与 JSF 2.1/2.0 兼容,它们似乎还没有像您在此期间发现的那样做到这一点。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-11-26
        • 2019-12-14
        • 1970-01-01
        • 1970-01-01
        • 2013-04-09
        • 2015-04-05
        • 1970-01-01
        相关资源
        最近更新 更多