लोड हो रहा है मेरे पास एक ऐसा एप्लिकेशन है जो जेपीए/हाइबरनेट और Google गिइस का उपयोग करता है। Guice को ServletContextListener
में बूटस्ट्रैप किया गया है और यह EntityManagerFactory
स्वयं सेट करता है।जेबॉस एएस 7 स्वचालित रूप से जेपीए
एप्लिकेशन टॉमकैट 7 पर ठीक काम करता है, लेकिन जब मैं जेबॉस एएस 7 पर तैनात करता हूं तो यह विफल रहता है क्योंकि जेबॉस मेरे ServletContextListener
का आह्वान करने से पहले जेपीए को स्वचालित रूप से सेट करने का निर्णय लेता है।
मैं जेबॉस को स्वचालित रूप से जेपीए शुरू करने के लिए कैसे प्राप्त कर सकता हूं और इसके बजाय मेरे ServletContextListener
को ऐसा करने के लिए प्रतीक्षा कर सकता हूं?
अद्यतन
लिंक है कि जेम्स नीचे प्रदान के अनुसार:
आवेदन तैनाती के दौरान, जेपीए उपयोग का पता चला है (उदाहरण के लिए persistence.xml या @ PersistenceContext/यूनिट एनोटेशन) और हाइबरनेट निर्भरता इंजेक्शन आवेदन परिनियोजन में।
https://docs.jboss.org/author/display/AS71/JPA+Reference+Guide#JPAReferenceGuide-Introduction
मैं इस "स्वत: पता लगाएं" सुविधा को अक्षम करने के लिए कैसे पता लगाने की जरूरत है।
# अद्यतन 2
जेपीए के कंटेनर प्रबंधन persistence.xml के लिए निम्न संपत्ति जोड़कर निष्क्रिय किया जा सकता: फरवरी 2012 तक,
<property name="jboss.as.jpa.managed" value="false" />
अनुसार this topic को यह कार्यप्रणाली केवल है एक रात के निर्माण में उपलब्ध है।
यह काफी पुराना है, लेकिन मुझे एक ही समस्या का सामना करना पड़ा। मेरी अतिरिक्त समस्या यह है कि मैं persistence.xml का उपयोग नहीं कर रहा हूं बल्कि जावा मैनेजर के साथ इकाई प्रबंधक कारखाने की घोषणा कर रहा हूं और ऐसा लगता है कि संपत्ति को जोड़कर अनदेखा किया जाता है और इससे कोई फर्क नहीं पड़ता। कोई विचार अगर इसे इस दृष्टिकोण से हल किया जा सकता है? – andreadi
@andreadi कोई विचार नहीं। मैं केवल एएस 7 पर एक आवेदन का परीक्षण कर रहा था लेकिन उस परियोजना के लिए इसका उपयोग करने के साथ कभी आगे नहीं बढ़ गया। आप सबसे अच्छा शर्त शायद अपने विनिर्देशों के साथ एक नया सवाल पूछना होगा। –