में रिसोर्स-रेफ की आवश्यकता है, अभी स्प्रिंग बूट में देख रहे हैं और जावा कॉन्फ़िगरेशन और अंततः web.xml
के बिना इसे ठीक से करना चाहते हैं। तो, मुश्किल हिस्सा यह है कि उत्पादन पर्यावरण को क्लासिक WAR
फ़ाइल की आवश्यकता होती है।स्प्रिंग बूट को अभी भी web.xml
इसलिए, मुझे WAR
मेरे मैवेन pom.xml
फ़ाइल के भीतर पैकेजिंग निर्दिष्ट किया गया है और मुख्य एप्लिकेशन वर्ग SpringBootServletInitializer
फैलाता है।
ठीक काम करता है। अब, मुश्किल हिस्सा यह है कि उत्पादन वातावरण में Datasource
JNDI
के माध्यम से प्रावधान किया गया है। एक क्लासिक वसंत ऐप्लिकेशन में आप web.xml
में इस निर्भरता का संदर्भ इस प्रकार एक resource-ref
का उपयोग कर होगा:
<resource-ref>
<res-ref-name>jdbc/DefaultDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
</resource-ref>
सभी अनुसंधान मैंने किया था एक और इसकी जगह संकेत मिलता है कि मैं web.xml
से छुटकारा पाने में सक्षम होगा लगता है और संबंधित context.xml
फ़ाइल (META-INF फ़ोल्डर में):
<Resource name="jdbc/DefaultDB"
auth="Container"
type="javax.sql.DataSource"
factory="com.sap.jpaas.service.persistence.core.JNDIDataSourceFactory"/>
दुर्भाग्य से वह काम नहीं करता:/
दिलचस्प बात यह है कि एक सादे servlet3 वेब अनुप्रयोग बस काम करता है ठीक है, [https://github.com/steinermatt/servlet3-sample] देखें।
तो, मुझे विश्वास है कि मूल कारण यह स्प्रिंग बूट ऐप के लिए काम नहीं करता है, स्प्रिंग बूट बूटस्ट्रैपिंग प्रक्रिया से संबंधित है ... इसलिए, वास्तव में किसी भी संकेत की तलाश में, सुझाव क्या हो सकता है हो !!!
किसी भी मदद की सराहना की जाती है!