को समग्र घटक मैं एक कस्टम घटक को एक समग्र घटक माइग्रेट करना होगा। यह उदाहरण अपेक्षाकृत सरल है, लेकिन समस्या का प्रदर्शन करता है: मेरे घटक के बच्चे (my:test
) को किसी अन्य घटक में प्रस्तुत करने की आवश्यकता है। समग्र my:testC
, एक उदाहरण है जो मैं का उपयोग नहीं करना चाहते हैं के रूप में, इसमाइग्रेट कस्टम घटक
<composite:implementation>
<p:panel>
<composite:insertChildren/>
</p:panel>
</composite:implementation>
जाहिर है की तरह लग रहे हैं (कम से कम मुझे आशा है कि मैं इस धारणा के साथ सही हूँ) मैं बस p:panel
encodeBegin
में दिखाया नहीं जा सकता ।
@FacesComponent("test")
public class Test extends UIPanel
{
@Override
public void encodeBegin(FacesContext context) throws IOException
{
// ??
}
@Override
public void encodeEnd(FacesContext context) throws IOException
{
// ??
}
}
मैं इस तरह एक तरह से my:test
उपयोग करना चाहते हैं:
<my:test>
<h:outputText value="some Text"/>
</my:test>
उत्पादन my:testC
का उपयोग करने से एक ही होना चाहिए: कुछ पाठ एक PrimeFaces पैनल में प्रदान की गई। मैं अपने जावा क्लास में p:panel
के उपयोग को कैसे एन्कोड कर सकता हूं?
मुझे ठोस समस्या/प्रश्न (वास्तव में, कोई ठोस प्रश्न नहीं है) को समझ में नहीं आता है। क्या आप कंक्रीट से पूछ रहे हैं कि अपने कस्टम घटक में '' के समान आउटपुट को कैसे एन्कोड करना है? या आप ठोस रूप से पूछ रहे हैं कि उस भाग के लिए '' के डिफ़ॉल्ट एन्कोडर (प्रस्तुतकर्ता) का पुन: उपयोग कैसे करें? बच्चों को समस्या नहीं है क्योंकि 'एनकोडChildren()' यह सब स्वचालित रूप से करता है, पहले अनुच्छेद की अंतिम वाक्य अन्यथा इंगित करने के लिए प्रतीत होता है, जो भ्रमित है। –
BalusC
@ बाल्लूसी इस मुद्दे को देखने के लिए धन्यवाद। मैंने सवाल अपडेट किया है, उम्मीद है कि अब समझना बेहतर होगा। अपने प्रश्न का उत्तर देने के लिए: मैं 'p: panel' के समान आउटपुट को एन्कोड करने का प्रयास कर रहा हूं। – Thor