亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Spring Integration 2.2.3.RELEASE @ServiceActivator

Spring Integration 2.2.3.RELEASE @ServiceActivator

慕容708150 2022-01-19 13:06:44
我有這些版本的遺留代碼(Spring 版本:3.2.1.RELEASE 和 Spring Integration 版本 2.2.3.RELEASE)。我想將spring集成的所有xml配置遷移到java配置。在開始遷移之前,我正在做一些測試,但我正在努力解決@ServiceActivator哪個不起作用。我的例子是:@Configuration@ImportResource("classpath*:integration-config.xml")public static class IntegrationConfig {    @Bean    public MessageChannel queueChannel() {        return new QueueChannel(5);    }    @Bean    public MessageChannel pubSubChannel() {        PublishSubscribeChannel publishSubscribeChannel = new PublishSubscribeChannel();        publishSubscribeChannel.subscribe(new MessageHandler() {            @Override            public void handleMessage(Message<?> message) throws MessagingException {                System.out.println("First handler :" + message.getPayload());            }        });        publishSubscribeChannel.subscribe(new MessageHandler() {            @Override            public void handleMessage(Message<?> message) throws MessagingException {                System.out.println("Second handler :" + message.getPayload());            }        });     return publishSubscribeChannel;    }}和 :@MessageEndpointpublic static class MessageEndpointDefintion {    @ServiceActivator(inputChannel = "queueChannel")    public void queueActivator(String payload) {        System.out.println("Payload from queue : " + payload);    }    @ServiceActivator(inputChannel = "pubSubChannel")    public void pubSubActivator(Message<String> message) {        System.out.println("Payload from pub-sub :" + message.getPayload());    }}當我在頻道中發送一些消息時,@ServiceActivator會調用任何消息。如此處所示:添加@EnableIntegration(自 Spring Integration 版本 4 起可用)可以解決問題,但在我的情況下,我使用的是不提供此注釋的版本 2.2.3。如果他們在此版本中提供此注釋,我認為我們可以使用它,但如何使用?其他問題,我可以使用相同版本的 Spring (3.2.1) 將 Spring Integration 版本升級到 4 嗎?謝謝
查看完整描述

1 回答

?
UYOU

TA貢獻1878條經驗 獲得超4個贊

您缺少將其添加到 XML 配置中的信息:


<int:annotation-config/>


<xsd:element name="annotation-config">

    <xsd:annotation>

        <xsd:documentation>

            Enables annotation support for Message Endpoints.

        </xsd:documentation>

    </xsd:annotation>

不幸的是,舊版本不能只使用簡單的注釋。整個 Spring Integration 引擎由 XML 觸發。


不:如果不升級 Spring Framework,就無法升級 Spring Integration。


查看完整回答
反對 回復 2022-01-19
  • 1 回答
  • 0 關注
  • 258 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號