2011-03-10 66 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