2014-07-24 37 views
0

我想添加一些東西到其他人創建的複合組件中,並且在那裏有一個#{cc.foo}。我似乎無法找到foo的定義,甚至在整個代碼庫中執行grep。#{cc.foo}和#{cc.attrs.foo}之間有什麼區別?

一般來說cc.attrs.foocc.foo有什麼區別?

編輯我發現它在一些jar中,因此我沒有在搜索中看到它。問題仍然存在。謝謝

回答

1

究竟是foo?複合組件(如其他UIComponent)具有預定義的某些屬性:例如,#{cc.rendered}#{cc.clientId}由Java EE規範定義,而不是由用戶定義,因此它們始終在複合組件中可用。

一般而言,#{cc.whatever}將組件本身的特性:它的組件ID #{cc.id},其客戶ID(即發生了什麼呈現爲id屬性的HTML標記的)#{cc.clientID},其父組件#{cc.parent}等,這些是由提供Java EE。另一方面,#{cc.attrs.whatever}由組件開發人員提供:它們將是組合組件的命名屬性:對於組合組件文件的<composite:interface>部分中的每個<composite:attribute name="myAttribute" ... />,將會有一個#{cc.attrs.myAttribute}可用於<composite:implmenentation>部分composte組件文件。

+0

我不知道:(我在任何.java文件中都找不到它,並且我沒有創建複合組件,我怎麼知道這個? – user3280015

+0

噢好吧,它是'invalidEntriesCount'。但是看到我上面的EDIT ,我在一個罐子裏發現它。謝謝 – user3280015

+0

好的,我編輯了我的答案以涵蓋一般情況。 – Nick

相關問題