2011-04-13 24 views
7

मैं एक शीर्षक और एक उपशीर्षक के साथ एक JSF टेम्पलेट का नाम विशेषता acessing:एक <ui:insert>

<h3><ui:insert name="title"/></h3> 
<hr/> 
<h5><ui:insert name="subtitle"/></h5> 

सभी इस टेम्पलेट का उपयोग कर पृष्ठों शीर्षक है, लेकिन हमेशा नहीं एक उपशीर्षक:

<ui:define name="title">My Title with no subtitle</ui:define> 

जब कोई उपशीर्षक नहीं है तो मैं <hr/> टैग नहीं चाहता हूं। तो मैं वास्तव में क्या करना चाहता हूं यह जांचें कि subtitle खाली है, यदि हां, तो कोड के ब्लॉक को अनदेखा करें। ऐसा ही कुछ:

<h3><ui:insert name="title"/></h3> 
<c:if test="#{not empty subtitle}"> 
    <hr/> 
    <h5><ui:insert name="subtitle"/></h5> 
<c:if> 

लेकिन निश्चित <c:if test="#{not empty subtitle}"> का काम नहीं करता। मुझे नहीं पता कि subtitle चर के मूल्य तक कैसे पहुंचे।

कोई विचार?

धन्यवाद

उत्तर

8

निकटतम क्या आप प्राप्त कर सकते हैं बजाय एक <ui:param> के रूप में उपशीर्षक परिभाषित करने के लिए है।

इस प्रकार

,

<ui:define name="title">My Title with a subtitle</ui:define> 
<ui:param name="subtitle" value="A subtitle" /> 

<h3><ui:insert name="title"/></h3> 
<ui:fragment rendered="#{not empty subtitle}"> 
    <hr/> 
    <h5>#{subtitle}</h5> 
</ui:fragment> 
साथ
संबंधित मुद्दे