我想添加一些東西到其他人創建的複合組件中,並且在那裏有一個#{cc.foo}
。我似乎無法找到foo
的定義,甚至在整個代碼庫中執行grep。#{cc.foo}和#{cc.attrs.foo}之間有什麼區別?
一般來說cc.attrs.foo
和cc.foo
有什麼區別?
編輯我發現它在一些jar中,因此我沒有在搜索中看到它。問題仍然存在。謝謝
我想添加一些東西到其他人創建的複合組件中,並且在那裏有一個#{cc.foo}
。我似乎無法找到foo
的定義,甚至在整個代碼庫中執行grep。#{cc.foo}和#{cc.attrs.foo}之間有什麼區別?
一般來說cc.attrs.foo
和cc.foo
有什麼區別?
編輯我發現它在一些jar中,因此我沒有在搜索中看到它。問題仍然存在。謝謝
究竟是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組件文件。
我不知道:(我在任何.java文件中都找不到它,並且我沒有創建複合組件,我怎麼知道這個? – user3280015
噢好吧,它是'invalidEntriesCount'。但是看到我上面的EDIT ,我在一個罐子裏發現它。謝謝 – user3280015
好的,我編輯了我的答案以涵蓋一般情況。 – Nick