2012-08-07 3 views
1

을 정의는 중첩 템플릿을 고려 this :전달 템플릿 매개 변수 및

,210
<ui:composition template="Layout.xhtml"> 

    <ui:define name="header"> foo </ui:define> 
    <ui:define name="content"> foo2 </ui:define> 
    <ui:param name="uiParameter" value="foo3"/> 

</ui:composition> 

하나는 그것을 다시 정의하여 Base.xhtml 템플릿에 Layout.xhtml<ui:param> 또는 <ui:define>를 전달해야합니까. 은 "템플릿 매개 변수가 계단식 다르게 동작합니까?"예컨대 것은 :로

<ui:param name="uiParameter" value="#{uiParameter}"> 
<ui:define name="header"> 
    <ui:insert name="header"/> 
</ui:define> 

하나는이 질문을 바꿔 수

답변

4

대답은 예입니다. 나는 7.0 AS JBoss에서 다음 코드를 실행했습니다

nest1.xhtml :

<!DOCTYPE html> 
    <html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:h="http://java.sun.com/jsf/html" 
     xmlns:ui="http://java.sun.com/jsf/facelets"> 

    <h:head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
     <title><ui:insert name="title"> 
       Nested 
      </ui:insert></title> 
    </h:head> 

    <h:body> 
     <ui:insert name="main" /> 
     <h:outputText value="#{uiParam}"/> 
    </h:body> 

</html> 

nest2.xhtml :

<ui:composition xmlns="http://www.w3.org/1999/xhtml" 
    xmlns:ui="http://java.sun.com/jsf/facelets" template="nest1.xhtml"> 

    <ui:define name="main"> 
     <p>Nested templated content.</p> 
    </ui:define> 
</ui:composition> 

nest3.xhtml :

<ui:composition xmlns="http://www.w3.org/1999/xhtml" 
    xmlns:ui="http://java.sun.com/jsf/facelets" template="nest2.xhtml"> 

    <ui:define name="title">Nested Template</ui:define> 
    <ui:param name="uiParam" value="ui param value" /> 
</ui:composition> 

은 다음과 같이 표현되었습니다 :

screenshot of jboss output