【问题标题】:Cannot resolve method 'getBody' in Message无法解析消息中的方法“getBody”
【发布时间】:2020-12-31 13:21:30
【问题描述】:

我是 JavaEE 的新手,正在尝试处理 JMS 的东西。这是实现 MessageListener 并覆盖 onMessageMessageBean,我因此尝试从队列接收消息 我的代码sn-p:

@Override
public void onMessage(Message message) {
 try{
  System.out.println(message.getBody(String.class));
 }catch(JMSException e){
   System.err.println(e.toString());
 }
}

但不幸的是,有一个编译错误,方法 getBody 无法解析并在 IntelliJ 中标记为红色。帮我弄清楚。提前致谢

【问题讨论】:

  • 什么包消息?
  • @ToànNguyễnHải onMessage 是来自接口 MessageListener 的方法。但是发送消息的对象是来自 java.jms 包的 JMSProducer
  • 分享你的 pom.xml。我更喜欢你先阅读spring-jmsgithub.com/spring-guides/gs-messaging-jms的教程
  • @ToànNguyễnHải 我不使用 Spring 我使用 EJB 和 MessageBean ...我刚刚开始研究 EE,并试图弄清楚如何使用 EJB

标签: java jms mom


【解决方案1】:

getBody(Class<T> c) 方法是 JMS 2.0 中的新方法。您的项目几乎肯定包括 JMS 1.1 规范 jar。更改您的项目,以便包含 JMS 2.0 规范 jar,并且该错误应该会消失。

【讨论】:

    猜你喜欢
    • 2015-11-07
    • 2022-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-12
    相关资源
    最近更新 更多