【发布时间】:2010-07-29 12:36:59
【问题描述】:
我想动态选择一个 facelet 来呈现我的数据列表中的一些项目。第一次尝试是:
但它不起作用,因为 ui:include 的 src 被评估得太早了。 facelet 信息是真正动态的,所以我不能使用 c:forEach (也不建议与 facelet 混合使用)。我想这一切都归结为找到一个基于组件的 ui:include 替代方案。
有这样的东西还是我需要自己写?
【问题讨论】:
-
多年来,我们一直在为同样的问题苦苦挣扎。我想知道 mrembisz 你有没有用 JSF 2 找到更好的解决方案?如果不能,您可以分享您的自定义解决方案吗?
-
@cyberoblivion 我们已经实现了我们自己的包含组件并调整了 UIRepeat 来使用它——主要是为了允许多个嵌套级别。它仍然适用于我们的生产系统。但我们还是离开了 JSF。
-
所以该解决方案对其他人没有用处,或者您被禁止共享代码?我对代码很感兴趣。
-
@cyberoblivion 你可以试试这些课程。需要注册这些组件,以便让这一切正常工作并非易事:pastebin.com/FSfYWehfDynamicInclude pastebin.com/Lpf4UxxQUIRepeat(我认为已编辑 JSF 2.0.6 代码)pastebin.com/bKk701xUDynamicIncludeHandler
-
这看起来正是我所需要的。先生,您是绅士和学者!谢谢!