2017-08-29 106 views
0

我正在使用JMS將對象發佈到主題中。用戶將讀取該對象,執行一些操作並返回一個值。JMS中的發佈服務器可以返回值嗎?

但是從我在不同代碼中看到的情況來看,發佈者可以將對象發佈到一個主題中,並且它不會收回任何東西。

public void send(Message m){ 
     jmsTemplate.convertAndSend(topic, m); 
    } 



@JmsListener(destination = "${jsa.activemq.topic}") 
    public void receive(Message msg){ 
     System.out.println("Recieved Message: " + msg); 
    } 

我需要接收者向發佈者返回一個值。我怎樣才能做到這一點?

回答

0

您可以使用模板sendAndReceive()操作。它沒有convertSendAndReceive()方法;因此您必須手動進行收/發郵件轉換(例如,使用SimpleMessageConverter)。

您也可以使用Spring Integration JMS Outbound Gateway作爲Spring Integration應用程序的一部分。

+0

你能指出你說的第一種方法的任何資源嗎? – africandrogba

+0

我需要從接收器中獲得一個值,就像我們調用方法時所獲得的值一樣。 – africandrogba

+0

你確實有JMSmessagingtemplate convertsendandrecieve(..,..,..)方法,對吧?哪些可以用來轉換? – africandrogba

相關問題