से Access Config.groovy जब मेरा Grails ऐप शुरू होता है, तो मैं पृष्ठभूमि में स्प्रिंग एकीकरण और बैच प्रक्रिया भी शुरू करता हूं। मैं Config.groovy फ़ाइल में संग्रहीत कुछ डीबी कनेक्शन गुणों को रखना चाहता हूं, लेकिन मैं उन्हें टेक एकीकरण/बैच प्रक्रिया में उपयोग की जाने वाली जावा क्लास से कैसे एक्सेस करूं?जावा क्लास
Converting Java -> Grails ... How do I load these properties?
जिससे पता चलता है का उपयोग करते हुए:
private Map config = ConfigurationHolder.getFlatConfig();
की तरह कुछ के द्वारा पीछा किया:
मैं इस सूत्र पाया
String driver = (String) config.get("jdbc.driver");
यह वास्तव में ठीक काम करता है (तेह गुण भरी हुई हैं Config.groovy से ठीक से) लेकिन समस्या टी है टोपी कॉन्फ़िगरेशनहोल्डर को बहिष्कृत करने के बाद है।
How to access Grails configuration in Grails 2.0?
तो वहाँ एक गैर पदावनत रास्ता तक पहुँच प्राप्त करने के लिए है: और किसी भी धागा मैं इस मुद्दे के साथ काम कर पाया है Grails विशिष्ट हो सकता है और इस सूत्र में dependancy इंजेक्शन का उपयोग कर, की तरह का सुझाव करने लगता है जावा क्लास फ़ाइल से Config.groovy गुण?
[आपके द्वारा लिंक किए गए प्रश्न के स्वीकृत उत्तर] में दूसरी विधि के साथ क्या गलत है (http://stackoverflow.com/a/7136095/6509)? –
हाय टिम, उत्तर देने के लिए चीयर्स। मैंने अपनी जावा कक्षा में संसाधन फ़ाइल में एक बीन के रूप में रखा है (grails की संपत्ति के साथ आवेदन और grails आवेदन का एक रेफरी), और मेरी कक्षा में निम्नलिखित पंक्ति जोड़ा: निजी Grails आवेदन grails आवेदन; गेटर और सेटर के साथ। लेकिन जब मैं इसे ConfigObject config = grailsApplication.getConfig() के माध्यम से एक्सेस करने का प्रयास करता हूं; ऐसा लगता है कि यह शून्य और त्रुटियों से बाहर है। कोई विचार क्या मैं गलत कर रहा हूँ? धन्यवाद – Illu
आप इसे एक्सेस करने का प्रयास कर रहे हैं? आप कन्स्ट्रक्टर में निर्भरता-इंजेक्शन वाले बीन्स का उपयोग नहीं कर सकते हैं, उदाहरण के लिए, आपको '@ पोस्टकॉन्स्ट्रक्चर 'के साथ एनोटेटेड विधि घोषित करने की आवश्यकता है और उस तर्क को डालने की आवश्यकता है जिसके बजाय वहां' grailsAplication 'की आवश्यकता है, या वैकल्पिक रूप से कन्स्ट्रक्टर तर्क इंजेक्शन का उपयोग करें सेटर इंजेक्शन। –