java - Spring 3.2 Dependency injection via @Resource for primitive types -


मेरे पास यह जावा कोड है:

  सार्वजनिक वर्ग ग्रीटिंग एसरिसआईएमपीएल IGreetingService {@Resource (name = "एबीसी") निजी स्ट्रिंग anotherMsg = null;   

स्प्रिंग- config.xml क्या होना चाहिए? निम्नलिखित XML त्रुटि दे रहा है:

वर्ग पथ संसाधन [greetingConfig.xml] में परिभाषित नाम 'एबीसी' के साथ बीन बनाने में त्रुटि: संपत्ति मान सेट करने में त्रुटि; नेस्टेड अपवाद org.springframework.beans.NotWritablePropertyException: बीन वर्ग [java.lang.String] का अमान्य संपत्ति 'anotherMsg': बीन प्रॉपर्टी 'anotherMsg' लिखने योग्य नहीं है या इसमें एक अमान्य सेटर विधि है। क्या सेटर का पैरामीटर प्रकार प्राप्तकर्ता का वापसी प्रकार से मेल खाता है?

यह वसंत-कॉन्फिग.एक्सएम में बीन कॉन्फ़िगरेशन है:

  & lt; बीन आईडी =" एबीसी "वर्ग =" java.lang.String "& gt; & lt; संपत्ति नाम = "अन्य संदेश" मान = "परीक्षण @ संसाधन ..." / & gt; & Lt; / सेम ​​& gt;    

यह बीन घोषणा

  & lt; bean id = "abc" वर्ग = "java.lang.String" & gt; & lt; संपत्ति नाम = "अन्य संदेश" मान = "परीक्षण @ संसाधन ..." / & gt; & Lt; / सेम ​​& gt;   

प्रकार की बीन के लिए है स्ट्रिंग । प्रकार स्ट्रिंग को anotherMsg नामक एक संपत्ति नहीं है > स्ट्रिंग सेम, जिसे आप एक ग्रीटिंग एस सेवाइंपल बीन में इंजेक्ट करेंगे, निर्माता तर्क का उपयोग करें

  & lt; bean id = "abc" class = "java .lang.String "& gt; & Lt; constructor-arg प्रकार = "java.lang.String" value = "परीक्षण @ संसाधन ..." / & gt; & Lt; / सेम ​​& gt;   

आप आम तौर पर स्ट्रिंग सेम नहीं बनाते हैं स्ट्रिंग मानों को इंजेक्ट करने के बजाय प्रॉपर्टी रिज़ोल्यूशन का उपयोग करें @ वैल्यू और प्रॉपर्टीसोत प्लेसहोल्डर कॉन्फ़िगरर में देखें।

Comments

Popular posts from this blog

Verilog Error: output or inout port "Q" must be connected to a structural net expression -

jasper reports - How to center align barcode using jasperreports and barcode4j -

c# - ASP.NET MVC - Attaching an entity of type 'MODELNAME' failed because another entity of the same type already has the same primary key value -