0

我正在尝试重用 DefautMessage 类将正文发送到 seda 组件。我的消息类在下面给出,没有实现。

public class TestMessage extends DefaultMessage{
}

然后我将其作为

TestMessage msg = new TestMessage();
            msg.setBody(doc);
            getCamelContext().createProducerTemplate().sendBody("seda:inputDoc",msg);

但是在运行应用程序时,我遇到了以下异常:

Caused by: org.apache.camel.InvalidPayloadException: No body available of type: org.dom4j.Document but has value: Message: org.dom4j.tree.DefaultDocument@122bfd6 [Document: name testDocument] of type: com.test.TestMessage on: Message: Message: org.dom4j.tree.DefaultDocument@122bfd6 [Document: name testDocument]

我的实施有什么问题?

4

2 回答 2

0

我认为你包装了错误的对象它期待 org.dom4j.Document 但它得到了 org.dom4j.tree.DefaultDocument

什么是文档类型??

于 2012-05-08T19:47:20.787 回答
0

通常您不需要定义自己的消息类。只需使用骆驼的 DefaultMessage 并设置您需要的正文和标题。您尝试扩展 DefaultMessage 是否有特殊原因?

于 2012-05-09T05:47:09.537 回答