मेरे पास ऐसे मामले का उपयोग किया गया है जिसमें मुझे यूआई पर विभिन्न ग्रंथों को प्रदर्शित करने के लिए संसाधन बंडल का उपयोग करना है। इनमें से कुछ संसाधन बंडल प्रविष्टियां पैरामीट लेती हैं (उदा। {0}), इनके लिए मैं h: outputFormat का उपयोग करता हूं लेकिन कभी-कभी वह पर्याप्त नहीं होता है।जेएसएफ घटकों के गैर-मूल्य विशेषताओं के साथ पैरामीटरेटेड संदेशफॉर्मैट का उपयोग कैसे करें
उदा।
someMessage=Display this message with param {0}
संसाधन बंडल में।
एक्सएचटीएमएल पर यह प्रदर्शित करने के लिए मैं सामान्य रूप से कार्य करें:
<h:outputFormat value="#{msg['someMessage']}"><f:param value="#{someBean.value}"/></h:outputFormat>
कि अच्छी तरह से काम करता है जब यह एक साधारण बात है, लेकिन और अधिक जटिल उपयोग के मामलों के लिए यह पर्याप्त नहीं है।
<h:commandLink action="logout" title="#{msg['someMessage']}">
<f:param value="#{someBean.value}" />
<h:graphicImage library="images" name="image.png" />
</h:commandLink>
जो काम नहीं करता है: उदाहरण के लिए मैं 'शीर्षक' एक commandLink की विशेषता ऊपर संसाधन बंडल प्रविष्टि का उपयोग करना चाहते हैं। मैंने यह भी कोशिश की:
<h:commandLink action="logout">
<f:attribute name="title">
<h:outputFormat value="#{msg['someMessage']}"><f:param value="#{someBean.value}"/></h:outputFormat>
</f:attribute>
<h:graphicImage library="images" name="image.png" />
</h:commandLink>
जो एफ के बाद भी काम नहीं करता है: attibute बच्चों को अनुमति नहीं देता है।
भले ही इसे बाईपास करने के लिए एक हैक है (उदाहरण के लिए प्राइमफेस से होवर घटक का उपयोग करना) ऐसे अन्य फ़ील्ड हैं जिन्हें पैरामीटरयुक्त संदेश की आवश्यकता हो सकती है।
क्या किसी को संदेशफॉर्मैट का उपयोग करने का कोई तरीका पता है जो किसी जेएसएफ घटक के गैर-मूल्य फ़ील्ड में तर्क लेता है?
इसी प्रकार का प्रश्न: http://stackoverflow.com/questions/5697189/pass-parameters-to-messages-from-resource-bundle-to-components-other-than-hou – Adam
यह एक अलग सवाल है क्योंकि वह एक अलग सवाल है ** मूल्य ** विशेषता के संबंध में, जो सीधे निपटने के लिए आगे है (मैंने प्रश्न का उत्तर दिया)। ** गैर-मूल्य ** विशेषताओं के साथ पैरामीटरयुक्त संदेशफॉर्मैट का उपयोग करने का एक तरीका वह है जिसे मैं ढूंढ रहा हूं। – Zak