2012-06-21 86 views
0

有一種情況是,當我的輸出端點關閉時,我需要在Active MQ JMS入站端點上存在暫停類型的行爲。這樣我就不會處理隊列中的消息。一旦然後輸出端點啓動,我想恢復隊列讀取操作。這是否可能在騾子?如果是的話如何?Mule - 如何停止JMS輸入端點

回答

1

你應該能夠做這樣的事情:

Connector connector = muleRegistry.lookupConnector(connectorName); 
connector.stop(); 

但是,如果你關心信息的損失,這是不是一個真正的直接的解決方案。在連接器關閉之前會有一段時間,如果您不小心處理這些情況,觸發此「停止」的消息可能會丟失。

還有另一種選擇。假設您的其他資源僅在很短的時間內停止運行,您可能只想使用JMS事務並將消息回滾到隊列中(當輸出端點發生故障時它將會發生),然後它將重試事務並過度。

+0

是的第二種方法將是一個更好的選擇。謝謝 – RohanRasane