引用JMS Spring Doc中的示例,正如您从示例中看到的那样,我们需要检查消息是否属于 TextMessage 类型,因此在您的情况下类似地,我们必须检查强制转换或检查您的对象是否是消息类型的实例,所以你有两种方法,希望这能澄清你的问题。
例子
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageListener;
import javax.jms.TextMessage;
public class ExampleListener implements MessageListener {
public void onMessage(Message message) {
if (message instanceof TextMessage) {
try {
System.out.println(((TextMessage) message).getText());
}
catch (JMSException ex) {
throw new RuntimeException(ex);
}
}
else {
throw new IllegalArgumentException("Message must be of type TextMessage");
}
}
}