代码之家  ›  专栏  ›  技术社区  ›  ant

在Java中通过JMS发送复杂对象

  •  12
  • ant  · 技术社区  · 14 年前

    是否可以通过JMS发送复杂的消息?我可以发短信、信息等。但是当我尝试发送自定义对象类型时 MyObject 水槽 send() 方法 MessageProducer 我得到编译错误。

    然后我试着铸造它,我得到铸造例外像 MyObject cannot be cast to javax.jms.Message

    下面是我尝试的代码:

    MessageProducer messageProducer = session.createProducer(destination);
    messageProducer.send((Message)getMyObject()); //where getMyObject method retrieves mapped myObject type
    

    有人有什么建议吗?谢谢您

    2 回复  |  直到 11 年前
        1
  •  20
  •   BalusC    11 年前

    只要你的目标是 Serializable ,您可以使用 ObjectMessage

    MessageProducer producer = session.createProducer( destination );
    ObjectMessage message = session.createObjectMessage( getMyObject() );
    producer.send( message );
    
        2
  •  0
  •   G__    14 年前

    您有两个问题:

    1. myObject不实现javax.jms.message
    2. GetMyObject不返回MyObject(假定它确实实现了消息)