मेरे पास इस समय एक ही एप्लिकेशन में कई वर्कफ़्लो चल रहे हैं, लेकिन वे अंततः अपने समर्पित jvm में चलेंगे। ऐसा लगता है कि मेरे पास केवल एक सर्विस एक्टिवेटर हो सकता है जिसमें एक हैंडल विधि प्रदान की गई हो, यह खोजने में सक्षम नहीं है कि प्रत्येक स्वतंत्र वर्कफ़्लो के लिए अनिवार्य रूप से एक को कैसे जोड़ा जाए। किसी भी दस्तावेज लिंक या कोड नमूने की बहुत सराहना की जाती है।
return IntegrationFlows.from(receivedDataChannel())
.enrichHeaders(h -> h.header("kafka_source_topic", alertsInputTopic))
.enrichHeaders(h -> h.header("target", "MLAlgo"))
.transform(Transformers.fromJson())
.filter(this::shouldProcess)
.log()
.handle(this)
.log()
.get();
तो यह हैंडल विधि एक वर्कफ़्लो के लिए बहुत अच्छा काम करती है लेकिन मेरे पास कई हैं और प्रत्येक को उस वर्कफ़्लो के भीतर काम करने के लिए अपनी समर्पित हैंडल विधि की आवश्यकता होती है। मैं हमेशा एक के साथ प्रबंधन करने के लिए कुछ हैक कर सकता हूं लेकिन मैं अलग कोड साफ करना चाहता हूं। धन्यवाद
1 उत्तर
handle(this)
का उपयोग करने के बजाय - सेवा कोड को एक अलग वर्ग में रखें, इसे @Bean
के रूप में जोड़ें और इसे प्रोटोटाइप @Scope
में डालें; फिर
.handle("beanName")
और प्रत्येक को अपनी प्रति प्राप्त होगी।
संबंधित सवाल
नए सवाल
spring-integration
स्प्रिंग एकीकरण प्रोजेक्ट के बारे में प्रश्नों के लिए इस टैग का उपयोग करें। यह अन्य प्रौद्योगिकियों के साथ अन्य स्प्रिंग प्रोजेक्ट को एकीकृत करने के बारे में सामान्य प्रश्नों के लिए अभिप्रेत नहीं है।