मैं फैक्ट्रीबीन और स्कॉप्स का एक साथ उपयोग करना चाहता हूं। विशेष रूप से, मैं एक फैक्ट्रीबीन द्वारा बनाई गई वस्तु को एक निश्चित (शायद कस्टम) दायरे में रखा जाना चाहता हूं। मुद्दा यह है कि निम्न कार्य है:स्प्रिंग फैक्ट्रीबीन और स्कॉप्स एक साथ काम कर रहे हैं
FactoryBean ही सीमित किया जा रहा में<bean class="x.y.z.TestFactoryBean" scope="test" />
परिणाम, और कारखाने के द्वारा बनाई गई वस्तु पर कुछ हद तक अप्रत्याशित व्यवहार है। मैं समझता हूं कि यह क्यों है; फैक्ट्री स्वयं एक प्रथम श्रेणी के वसंत-प्रबंधित बीन है, और इसका अपना जीवन चक्र है। हालांकि, मुझे यह निर्दिष्ट करने का कोई तरीका नहीं मिल रहा है कि कारखाने से लौटाई गई वस्तु को स्वयं ही स्कॉप्ड किया जाना चाहिए।
दूसरी ओर, वास्तव में यह करता है जो मैं चाहता है (जब तक TestFactoryBean FactoryBean इंटरफ़ेस को लागू नहीं करता है के रूप में):
<bean class="x.y.z.TestFactoryBean" name="testFactory">
<bean class="x.y.z.TestBean" factory-bean="testFactory"
factory-method="getObject" scope="test" />
तो असली सवाल यह है कि, मैं वसंत से व्यवहार करते हैं जैसे यह होता है कि कैसे कर सकते हैं ऊपर के दूसरे उदाहरण के लिए, लेकिन असली फैक्टरी बीन का उपयोग कर?
आप वसंत में बहुत अधिक सब कुछ अनुकूलित कर सकते हैं, इसलिए मुझे लगता है कि यह किसी भी तरह से संभव है, लेकिन इसमें शायद कुछ बहुत गहरी खुदाई (कस्टम एप्लिकेशन कॉन्टेक्स्ट का उपयोग करके) या ऐसा कुछ शामिल होगा। लेकिन मैं अनुमान लगा रहा हूं –
मैं सहमत हूं और अपना जवाब अपडेट कर चुका हूं। – Espen