我正在创建cxf webservice,首先cxf端点将收到一个调用,然后将其传递到有效负载模式下的骆驼路由,然后在骆驼路由中首先取消请求的处理,并在此之后重新处理响应

但是,当我返回响应时,我的身体变得空虚。当所有数据正确显示在日志上时。

我是否需要处理器将其更改为肥皂消息。

<from uri="cxf:bean:cardServiceCall?dataFormat=PAYLOAD" />
<camel:unmarshal ref="jaxb" />
<camel:process ref="ResponseProcessor"></camel:process>
<camel:marshal ref="jaxb" />


Upadte我知道我必须将其编组,但是在编组时,我会收到JAXB编组错误XMLRootElement注释丢失错误

最佳答案

我解决了这个问题,实际上我的架构中有问题。
我已经为我的复杂类型和引用元素类型指定了名称,但该名称不正确。您应该像下面这样

 <xsd:element name="myRequest">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element name="cardNumber" type="xsd:long" />
            <xsd:element name="transactionNumber" type="xsd:long" />
        </xsd:sequence>
    </xsd:complexType>
</xsd:element>

关于java - 在有效负载模式下从 Camel 处理器返回的空肥皂体,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27273775/

10-16 01:59