【发布时间】:2012-08-06 07:07:16
【问题描述】:
我们需要使用数据库中的 SeletItem 填充 UISelectOne 和 UISelectMany 组件。我决定创建一个能够提供 SelectItems 的子组件元素,而不是子类化。这样我们就不必为此行为引入新的组件了。
但我看不出最好的方法是什么。起初我以为我只需要一个 TagHandler,但似乎这个想法是死路一条。我尝试在应用方法中创建 SelectItems,但我不知道如何将项目添加到组件中。
还有其他方法吗。我必须创建一个组件而不是 TagHandler 吗?
我可能走错了路:如上所述,我尝试将项目添加到组件中,但这不应该由组件树自动完成。
感谢任何帮助。
【问题讨论】:
-
只是想知道,
<f:selectItems>与某些应用程序范围的#{data}托管 bean 的组合究竟如何不足? -
因为我们需要使用一些帮助方法在每个 bean 中提供代码。我们的想法是我们只提供一个从数据库到标签的逻辑键,然后自动添加。
-
我看不到/理解为什么“在每个 bean 中”是必要的。
<f:selectItems value>不一定需要引用与父 select 组件的value指向的相同托管 bean。
标签: database jsf-2 custom-component