我有以下設置在Spring集成4.1項目:如何在春季集成中沒有訂閱者的通道中保留消息?
- 訂閱發佈 - 訂閱通道鏈。
- 啓動/停止鏈條的服務總線。
當我停止鏈接時,會發生什麼消息從消息中消失,我希望他們留在那裏,直到鏈再次激活(很像JMS隊列)。我怎麼能實現這種行爲?
我已經嘗試過這種方法,但我從「備份通道」,指出它沒有任何用戶處理該消息得到一個錯誤:
1 - 發佈 - 訂閱通道
2 - 被停止的鏈/開始
3 - 控制總線網關
4 - 我添加了一個橋樑和常規通道,用於充當一個隊列
這是錯誤我用這個解決方案中獲得:
Caused by: org.springframework.integration.MessageDispatchingException: Dispatcher has no subscribers
at org.springframework.integration.dispatcher.UnicastingDispatcher.doDispatch(UnicastingDispatcher.java:107)
at org.springframework.integration.dispatcher.UnicastingDispatcher.dispatch(UnicastingDispatcher.java:97)
at org.springframework.integration.channel.AbstractSubscribableChannel.doSend(AbstractSubscribableChannel.java:77)
... 30 more
所以,問題是:我應該如何配置我的頻道所以消息一直存在,直到用戶再次被添加爲止?可能嗎?
好吧,這在尷尬,但我想我只需要添加一個'隊列'元素的通道聲明,以便不使用'DirectChannel'實現(消息發送時確實需要一個消費者...) – Victor