我有一個Facelet可能在不同的應用程序中使用。 我不想複製它,但重複使用它。我需要傳遞將管理視圖作爲參數的後臺bean,因爲某些邏輯可能會因使用它的應用程序而有所不同。將backing bean作爲參數傳遞給Facelet包括
我不想使用複合組件,只是包含Facelet並指定哪個bean將管理該視圖。我怎樣才能做到這一點?
讓我舉一個例子:
<ui:composition template="/resources/common/templates/template.xhtml"
xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core" xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:c="http://java.sun.com/jsp/jstl/core" xmlns:a4j="http://richfaces.org/a4j"
xmlns:rich="http://richfaces.org/rich" xmlns:fn="http://java.sun.com/jsp/jstl/functions">
<ui:define name="content">
<!-- somehow establish the backing bean that will manage formView.xhtml -->
<!-- f:set assign="ParameterBean" value="#{Bean}"/-->
<ui:include src="formView.xhtml" />
</ui:define>
</ui:composition>
formView.xhtml:
<ui:composition template="/resources/common/templates/template.xhtml"
xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core" xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:c="http://java.sun.com/jsp/jstl/core" xmlns:a4j="http://richfaces.org/a4j"
xmlns:rich="http://richfaces.org/rich" xmlns:fn="http://java.sun.com/jsp/jstl/functions">
<ui:define name="content">
<h:outputText value="#{ParameterBean.texto}" />
</ui:define>
</ui:composition>
你怎麼引用'ParameterBean'來調用實例方法? – Thufir