पर फ़ाइल के लिए संपत्ति-प्लेसहोल्डर का उपयोग कैसे करें हम classpath पर एक फ़ाइल से गुण लोड करने के लिए एक तरह से किया करते थे:फाइल सिस्टम
<context:property-placeholder location="classpath:myConfigFile.properties" />
और यह बहुत अच्छा काम किया। लेकिन अब हम उस सिस्टम पर एक विशिष्ट फ़ाइल से गुण लोड करना चाहते हैं जो क्लासपाथ में नहीं है। हम फ़ाइल को गतिशील रूप से लोड करने में सक्षम होना चाहते थे, इसलिए हम इसे पॉप्युलेट करने के लिए जावा पर्यावरण चर का उपयोग कर रहे हैं।
<context:property-placeholder location="${my.prop.file}" />
मैं भी इसे इस तरह की कोशिश की है, लुसियानो से एक विचार करने के लिए धन्यवाद: स्प्रिंग एक्सएमएल में
System.setProperty("my.prop.file", "/path/to/myConfigFile.properties");
:
जावा में: मैं नीचे एक सरल उदाहरण दे देंगे:
<context:property-placeholder properties-ref="prop" />
<util:properties id="prop" location="reso"/>
<bean id="reso" class="org.springframework.core.io.FileSystemResource">
<constructor-arg index="0" value="${my.prop.file}" />
</bean>
सब कुछ मैं कोशिश की है नाकाम रही है। इससे कोई फर्क नहीं पड़ता कि मैंने my.prop.file को क्या सेट किया है। सबसे बड़ी हिट में शामिल हैं:
<context:property-placeholder location="/path/to/myConfigFile.properties" />
(ClassNotFoundException: .path.to.myConfigFile.properties)
<context:property-placeholder location="file:/path/to/myConfigFile.properties" />
(ClassNotFoundException: file:.path.to.myConfigFile.properties)
<context:property-placeholder location="file:///path/to/myConfigFile.properties" />
(ClassNotFoundException: file:...path.to.myConfigFile.properties)
कैसे आप किसी स्थान फाइल सिस्टम पर और classpath पर नहीं है कि के साथ संपत्ति-प्लेसहोल्डर प्रयोग करते हैं? हम वसंत 3.0.5 का उपयोग कर रहे हैं।
यह पता चला कि स्क्रिप्ट फ़ाइल लोड करने वाली जावा प्रोग्राम चलाने वाली स्क्रिप्ट के साथ कोई समस्या थी। मदद के लिए शुक्रिया। मैं अनुरोध करने जा रहा हूं कि यह प्रश्न हटा दिया जाएगा, क्योंकि मूल कोड सभी के बाद काम करता है। आपकी मदद के लिए धन्यवाद।
BTW जोरदार w/इस बंद किया जा रहा असहमत –
बंद होने से असहमत भी। मैं कुछ googling के बाद यहाँ आया था और यह मेरे पास सही सवाल है ... –
मुझे भी - मुझे समझ में नहीं आता कि यह "बहुत स्थानीयकृत" श्रेणी के साथ क्यों बंद था? यह काफी सामान्य लगता है मेरे लिए? – monojohnny