0
是否在下面的示例中評估了EL#{myBean.property}?如果是的話,這意味着頁面上的所有EL都會被評估,而不管其「渲染」(或其他)屬性的值如何?在非呈現的JSF元素中的EL評估
<h:panelGroup rendered="false">
<h:outputText value="#{myBean.property}" />
</h:panelGroup>
是否在下面的示例中評估了EL#{myBean.property}?如果是的話,這意味着頁面上的所有EL都會被評估,而不管其「渲染」(或其他)屬性的值如何?在非呈現的JSF元素中的EL評估
<h:panelGroup rendered="false">
<h:outputText value="#{myBean.property}" />
</h:panelGroup>
是EL#{myBean.property}下面的例子中進行評價?
不可以。您也可以通過在getter方法上放置一個調試斷點來輕鬆回答它。
如果是的話,那意味着頁面上的所有委託貸款進行評估,不管他們的「渲染」(或任何其他)屬性的值?
,基本上取決於組件是如何精心設計的。標準的JSF組件不會那樣做,但是如果它是例如自定義組件在processXxx
方法內部不檢查isRendered()
方法,然後繼續處理它自己和孩子,那麼可以評估所有孩子的EL。
謝謝。它是關於標準的JSF組件。其實,我有一個更復雜的例子。簡而言之,我試圖推遲創建myBean,直到呈現通過EL引用myBean的組件之一。 – stasam 2012-03-06 15:19:53
我嘗試了一個簡單的例子,就像上面的例子。 EL評估。註釋?順便說一句。我正在使用JBoss AS 5.1附帶的JSF 1.2實現,如果這可能會有所作爲。 – stasam 2012-03-06 15:57:45
「like」?所以這不完全是給定的例子?你使用'rendered =「#{bean.someCondition}」'?顯然,這種情況在某個時候評估爲「真」。再次,只需運行調試器。 – BalusC 2012-03-06 16:24:13