2009-04-10 6 views
10

मेरे पास एक संसाधन फ़ाइल है जिसमें कुछ वैकल्पिक कुंजी होंगी। यदि वैकल्पिक संसाधन कुंजी मौजूद नहीं है, तो मैं इसके बजाय एक डिफ़ॉल्ट सेट करता हूं। ऐसा प्रतीत होता है कि यह निर्धारित करने का कोई आसान तरीका नहीं है कि संसाधन बंडल में कोई कुंजी मौजूद है या नहीं। तो यही वह है जो मैं इसके आसपास पाने के लिए कर रहा हूं।मैं कैसे जांच सकता हूं कि जेएसटीएल टैग का उपयोग कर संसाधन बंडल कुंजी मौजूद नहीं है?

<fmt:message var="title" key="login.reg.signup.${signupForm.regfrom}.title" /> 
<c:if test='${fn:startsWith(title, "??")}'> 
    <fmt:message var="title" key="login.reg.signup.default.title" /> 
</c:if> 

क्या कोई बेहतर तरीका है?

उत्तर

6

आप अपनी खुद की JSP टैग है कि इस करता है लिख सकता है, ताकि आप तो बस कर सकते हैं:

<my:message var="title" key="${form}.title" default="default.title"/> 

टैग कार्यान्वयन या तो अपने मौजूदा JSP वाक्य रचना, या एक जावा वर्ग हो सकता है।

2

आप चेक करने के लिए #{messagesFactory.messages.containsKey('key')} का उपयोग कर सकते हैं।

+1

यह केवल ईएल 2.2 का समर्थन करने वाले वातावरण में काम करता है (जो अभी तक अप्रैल 200 9 में मौजूद नहीं था)। – BalusC

संबंधित मुद्दे

 संबंधित मुद्दे