在 xhtml 中嵌入 JSF 代码

Embed JSF code in a xhtml

我需要使用来自托管 bean 的一些 JSF 代码(使用 p:panel 和 p:datatables 等)完成一个 xhtml 页面,但我不确定这是不是可能的。 我的尝试:

<h:outputText escape="true" value="#{controller.jsfString}"/>

无法理解"p:"个组件,只能简单html。

<ui:include src="#{controller.jsfString}">

它需要一个 xhtml 路径,而不是一个字符串。

我不知道还有什么尝试...甚至可能吗?

这里的 p 表示 prime-faces 你需要在 pom 中包含 prime-faces 依赖并在 XHTML 中为 prime-faces 启用标签库然后你可以使用所有 prime-faces 组件。

It's not be able to understand "p:" components, only simple html.

当然不是! h:outputText 值在视图呈现时计算,因此如果您呈现 JSF 标记,它们将不会在呈现完成后再次计算。

原则上,可以使用 JSTL <c:out> 以这种方式添加 JSF 标记,但它在 JSF facelets 中不可用。 不管怎样,告诉自己,它可以防止你做出糟糕的设计。

我们需要更多关于控制器应该输出什么的信息,以便为您提供帮助。