0

我需要创建一个自定义组件,它由一个下拉框、树和一个显示面板组成,用于显示节点的选定项目的详细信息。

这个 UI 组件将是一个弹出窗口,供用户选择一些项目并添加到支持 bean。(可用于选择衬衫、汽车或任何适合关卡和树数据的东西)

我想知道在创建用于多种用途的自定义组件时是否有任何好的阅读最佳实践。

经过头脑风暴,我发现了以下问题。

1)如何将选择传递回backingbean?可能的解决方案:为自定义组件实现观察者模式,因此当用户单击 [OK] 时,它将在关闭自定义组件之前将值传回支持 bean

2) 显示所选节点的详细信息。(不同类型的项目可以显示不同)可能的解决方案:我可能会考虑使用 UI:Include 但我正在考虑一个更优雅的解决方案

还有什么问题???

有什么帮助吗?

4

1 回答 1

1

我将忽略问题中的 ICEfaces 部分,因为我不使用它。

1)如何将选择传递回backingbean?

提供一个value属性,您可以在其中指定 bean 属性。最简单的方法是让您的自定义组件扩展UIInput已经提供此属性的组件。


2) 显示所选节点的详细信息。(不同类型的项目可以显示不同)可能的解决方案:我可能会考虑使用 UI:Include 但我正在考虑一个更优雅的解决方案

You could provide support for specific <f:facet>s. In the encodeChildren() of the component or its renderer you can get them by UIComponent#getFacet().

于 2012-06-22T05:06:53.800 回答