हाल ही में मैंने अपने विकास टोमकैट को 7.0.0 से 7.0.4 तक अपग्रेड किया। मेरे पास चीजें थीं:जावा कीवर्ड को ईएल पहचानकर्ताओं के रूप में अनुमति नहीं है
<c:set var="static" value=".." />
<c:set var="class" value=".." />
दोनों ने 7.0.0 पर काम किया लेकिन 7.0.4 पर काम करना बंद कर दिया। मैं opened a bug, यह बंद कर दिया गया था, जवाब के साथ:
स्वयं और उस टैग में संकलित होगा।
जावा पहचानकर्ताओं के लिए चेक ईएल प्रसंस्करण में जोड़े गए थे इसलिए मुझे पर संदेह है कि आपके पास पृष्ठ पर कहीं और अवैध ईएल है।
यह स्पष्ट नहीं था, लेकिन मुझे बाद का जवाब नहीं मिला, इसलिए मैंने ईएल स्पेक को देखा। JSP 2.1 (नवीनतम जा रहा है 2.2) के लिए मैंने पाया कि:
अध्याय 1, पेज 21: एक पहचानकर्ता एक जावा पहचानकर्ता होने के लिए विवश है - जैसे, कोई - नहीं, कोई /, आदि
और यह मुझे सबसे ज्यादा मिला है। मैं इस लाइन को इस तरह से पढ़ूंगा कि जावा पहचानकर्ताओं को लागू सिंटैक्स आवश्यकताएं लागू होती हैं, लेकिन आरक्षित शब्द नहीं (चूंकि हंटर class
और न ही static
ईएल में आरक्षित शब्दों की सूची में दिखाई देता है)। जेएलएस को "जावा पहचानकर्ता" शब्द के लिए संदर्भित नहीं किया गया है (और यह 2.2 spec में कुछ अन्य मामलों के लिए है, जिसे मैंने पूरी तरह से समीक्षा नहीं की थी)
तो, टोमकैट इन नामों को अस्वीकार करने का अधिकार है; वे जिस स्पेस का जिक्र कर रहे हैं उसका बिंदु, और क्या आपको लगता है कि वे इसे सही तरीके से व्याख्या कर रहे हैं।
yup, ऐसा लगता है कि जेएलएस का संदर्भ स्पेक में जोड़ा गया था। – Bozho