2011-05-09 12 views
6
<s:select 
    name="PenaltyPercentage" 
    id="PenaltyPercentageId" 
    list="#{'7.5%':'7.5%', '15.0%':'15.0%'}" <!-- shows error in this line --> 
    headerKey="" 
    headerValue="Please Select" 
    emptyOption="false"> 
</s:select> 

त्रुटि संदेशNetBeans 7.0 से पता चलता struts2 का चयन टैग में त्रुटि .. NetBeans संस्करण 6.9 इस त्रुटि

Encountered ":" at line 1, column 9. 
Was expecting one of: 
"}" ... 
"." ... 
"]" ... 
">" ... 
"<" ... 
+0

संबंधित: http://stackoverflow.com/questions/5865496/jsp-error-in-netbeans-7-0 – BalusC

उत्तर

6

Netbeans 7 JSP ईएल 2.1 जो अब # चरित्र का उपयोग करता है का उपयोग करता है नीचे के रूप में पढ़ता नहीं दिखाती है।

मेरे लिए (नेटबीन्स आईडीई 7.0 आरसी 1) यह ठीक से संकलित करता है और काम करता है हालांकि रेखा को एक त्रुटि के साथ ध्वजांकित किया जाता है। यदि ग्लासफ़िश जेएसपी निष्पादित नहीं करेगा तो निम्न लिंक दिखाता है कि जेएसपी ईएल को जेएसपी 2.1 कंटेनर (निम्न लिंक के नीचे) में कैसे अक्षम किया जाए।

#@[email protected]{ "foo" : "foo value", "bar" : "bar value" } 

इस सूत्र में मिला::

http://struts.apache.org/2.0.14/docs/ognl.html

शायद इस समय सबसे आसान समाधान नक्शे के वर्ग को जोड़ने के लिए है http://struts.1045723.n5.nabble.com/s2-JSF-JSP-EL-vs-OGNL-EL-td3528303.html

JSP ईएल 2.1 देखें पर जानकारी के लिए : http://jcp.org/aboutJava/communityprocess/final/jsr245/index.html


आप शायद इस मुद्दे को दिखा रहे हैं लेकिन बस यह सुनिश्चित करने के लिए, यदि आप मानचित्र के बजाय एक सूची प्रदान करते हैं तो सर्वर पर लौटाए गए मान प्रदर्शित मूल्य के समान होंगे। तो निम्नलिखित एक ही सलेक्ट बॉक्स पैदा करता है और एक त्रुटि का उत्पादन नहीं करता:

<s:select 
    list="{'7.5%','15.0%'}" <!-- does not show error --> 
    headerValue="Please Select" 
    emptyOption="false"> 
</s:select> 

मैं एक छोटे से समय बिताया अगर मैं सफलता के बिना Netbeans 7 में JSP ईएल संस्करण को बदल सकता है देखकर, यह भी निष्क्रिय करने के लिए एक रास्ता खोजने की कोशिश की सफलता के बिना जेएसपी ईएल त्रुटि जांच। इसलिए यदि आपको अपने जेएसपी में ओजीएनएल मानचित्रों का उपयोग करना होगा तो या तो जेएसपी ईएल अक्षम करें (जो कुछ के लिए एक आकर्षक विकल्प नहीं है) या दिखाए गए मानचित्र को स्पष्ट रूप से घोषित करें।

+0

चूंकि यह उत्तर स्वीकार नहीं किया गया है, क्या आप आगे यह स्पष्ट कर सकते हैं कि आप क्या खोज रहे हैं? – Quaternion

+0

# @ java.util.LinkedHashMap @ {"foo": "foo value", "bar": "bar value"} इससे समस्या हल हो गई। बहुत बहुत धन्यवाद Quaternion। तुम एक सितारे हो। – seenimurugan

+0

मैंने पूर्ण-फॉर्म का उपयोग करके हल किया लेकिन फिर भी कुछ स्थानों पर जहां मैं एस का उपयोग करता हूं: संपत्ति: एस: जावास्क्रिप्ट में इटरेटर यह मुझे त्रुटि दे रहा है और अधिक अजीब बात यह है कि यह लाइन नंबर को इंगित किए बिना पृष्ठ पर त्रुटि दे रहा है। मैं स्थान का पता लगाने में सक्षम था और 100% यकीन है कि, कुछ सामान्य भी जावास्क्रिप्ट में शामिल होने पर त्रुटि देता है। कोई भी समाधान ? –