JSF2 Composite 组件标签不兼容问题?

发布于 2024-09-09 05:09:29 字数 1186 浏览 6 评论 0原文

此代码是使用 JSF2 的自定义组件的测试用例,

仅供记录,文件: panel.xhtml ,位于 /resources/panels/panel.xhtml

测试。 xhtml:

<head>
</head>
<body>
<panels:panel/>
</body>
</html>

返回以下 html:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:panels="http://java.sun.com/jsf/composite/panels">

<head>
<script ...></script></head>
<body>
<panels:panel></panels:panel>
</body>
</html>

为什么没有被渲染?也许是因为我使用的是 Richfaces 3.3.3.Final 并且我在 web.xml 中有参数,所以 Richfaces 可以与 JSF2 一起使用?我尝试禁用它,但服务器无法启动,所以我无法尝试这是否是问题所在。

 <context-param>
     <param-name>javax.faces.DISABLE_FACELET_JSF_VIEWHANDLER</param-name>
     <param-value>true</param-value>
</context-param>

有人知道这是否是问题所在吗?如果是的话,是不是还不允许新的自定义组件功能和Richfaces 3.3.3.Final一起使用?

更新:我已经检查了 Richfaces 4.0 Alpha,它尚未实现 3.3.3.Final 的所有组件,因此它不是一个选项。

This code, a test case for a custom component using JSF2

Just for the record, the file: panel.xhtml , located at /resources/panels/panel.xhtml

test.xhtml:

<head>
</head>
<body>
<panels:panel/>
</body>
</html>

Returns the following html:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:panels="http://java.sun.com/jsf/composite/panels">

<head>
<script ...></script></head>
<body>
<panels:panel></panels:panel>
</body>
</html>

Why is not being rendered? Maybe because I'm using Richfaces 3.3.3.Final and I have the param in web.xml so Richfaces can work with JSF2? I tried disabling it but then the server does not start so I can't try if this is the problem.

 <context-param>
     <param-name>javax.faces.DISABLE_FACELET_JSF_VIEWHANDLER</param-name>
     <param-value>true</param-value>
</context-param>

Does anybody know if this is the problem? In case it is, it is not allowed yet to use the new custom components feature and Richfaces 3.3.3.Final together?

Update: I've checked Richfaces 4.0 Alpha and it does not have all the components of 3.3.3.Final yet implemented so it's not an option.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

百合的盛世恋 2024-09-16 05:09:29

JSF 2.0 复合组件无法与 RichFaces 3.3.3 一起使用,因为它们基于 JSF 2.0 VDL。请查看本文档中的限制部分

JSF 2.0 composite components won't work with RichFaces 3.3.3 as they are based on JSF 2.0 VDL. Please check limitations section in this document

风苍溪 2024-09-16 05:09:29

不要重新渲染面板重新渲染面板的形式。
并包括面板使用

我希望您可能在 web.xml 中使用 richfaces 过滤器

enter code here : <a4j:commandLink id="abclink" oncomplete="#{rich:component('abcPanel')}.show()" reRender="abcForm"/>

Don't rerender Panel rerender the form of the panel.
and to include panel use

And I hope you might be using richfaces filter in web.xml

enter code here : <a4j:commandLink id="abclink" oncomplete="#{rich:component('abcPanel')}.show()" reRender="abcForm"/>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文