2014-03-26 60 views
0

我正在构建一个应用程序,它从消息队列中呈现消息,对其进行处理,并将生成的响应发送到另一个队列。我已经成功建造了同样的。在JMS中获取消息类型 -​​ IBM MQ

但是,在发送消息之前,我必须从中获取相关ID,消息ID和消息类型,以便我可以在我生成的响应消息中设置这些消息。

我已经使用下面的代码获取了CorrelationID和Message ID。

   Message Requestmessage = ReceiveMessage(queueName); 
       String correlationID = Requestmessage.getJMSCorrelationID(); 
       String messageID = Requestmessage.getJMSMessageID(); 

我将如何获得消息类型。据我所知,有5种消息类型。 1.短信 2字节的消息 3.上游消息 4.对象消息 5 MAP消息 所有我需要的是,找出哪些输入我的“Requestmessage”属于。

在此先感谢。

+0

难道你不能只使用instanceof来检查类型吗? –

回答

2

找到了答案。我使用了instanceof关键字。

 if(Requestmessage instanceof TextMessage) 
     { 
      // 
     } 

     if(Requestmessage instanceof BytesMessage) 
     { 
      // 
     } 
     if(Requestmessage instanceof ObjectMessage) 
     { 
      //   
     } 
     if(Requestmessage instanceof StreamMessage) 
     { 
      // 
     }