2011-03-10 86 views

回答

2

由于您已经使用JSF 2.0,您确定要创建custom component而不是composite component吗?无论哪种方式,当然你必须能够使用非标准类型作为属性值。在延伸UIComponent(或更好,UIComponentBase)的自定义组件,您可以使用继承getAttributes()方法来获得它:

Object param = getAttributes().get("param"); 

这里只有一个标注为自定义组件,该@FacesComponent。它只是faces-config.xml中的<component>条目的替代品。对于剩余部分,JSF 1.2和2.0之间没有太大的区别,期望对部分状态保存有新的支持。您可以放心地遵循JSF 1.2针对定制组件的目标教程。

+0

为什么不使用'Object param = getAttributes.get(“param”);'? 'getAttributes'和'getValueExpression'有什么区别? – Anatoly 2015-01-10 00:04:26

+0

你说得对。这是一个古老的答案,我更新了它。 – BalusC 2015-01-10 00:48:21