java - @PostConstruct run when not all the properties of cascaded bean were initialized in Spring -
उदाहरण के लिए, मुझे कक्षा ए, बी, सी
@ सेवा सार्वजनिक वर्ग ए {@
निजी बी बी; @PostConstruct सार्वजनिक शून्य प्रारंभ करें () {b.computeUsingC (); } @ स्वामित्व वाली सार्वजनिक शून्य सेट बी (बी बी) {this.b = b; } ...} @ सेवा सार्वजनिक वर्ग बी {निजी सी सी; सार्वजनिक computeUsingC () {c.compute ()} @ एटोवर्ड पब्लिक व्होइड सेट सी (सी सी) {this.c = c; } ...} @ सेवा सार्वजनिक वर्ग सी {निजी ए एक सार्वजनिक शून्य गणना () {a.otherMethod (); } ... सार्वजनिक शून्य सेट ए (ए ए) {this.a = a; }}
मुझे निम्न के साथ लाइन में एक नलपॉइंटएक्सेप्शन मिला: c.compute ()
जब स्प्रिंग शुरू होती है, क्योंकि ग अभी तक वायर्ड नहीं हो जाता है।
I लगता है कि ए को एनोटेशन के साथ विधि नहीं चलाना चाहिए @PostConstruct से पहले B
पूरी तरह से आरम्भ हो जाता है यद्यपि बी अपने लिए ही तत्काल प्रारंभ होता है।
मुझे पता चला कि मुझे ए के लिए एक चक्रीय संदर्भ मिला है -> बी -> सी -> ए इसलिए स्प्रिंग बी का उपयोग करने से पहले बी पूरी तरह से प्रारंभ नहीं कर सकता है।
Comments
Post a Comment