Apache Camel没有捕获SOAP服务响应

时间:2017-08-14 16:11:43

标签: java web-services soap apache-camel cxf

我正在使用Apache Camel 2.19.2 DSL并尝试使用托管在不同服务器上的soap服务。我的骆驼代码是 -

SoapJaxbDataFormat soap = new SoapJaxbDataFormat("<Service Class Package Path>");
soap.setContextPath("Root element package path");
soap.setVersion("1.1");
from("direct:invokeSOAPService")
    .process(new Processor1()) //Constructs the main message body that will be set as body of the soap-Envelope
    .removeHeaders("*")
    .setHeader(Exchange.SOAP_ACTION, simple("Soap Action of the service from ASDL"))
    .setHeader(Exchange.HTTP_METHOD, simple("POST"))
    .setHeader(Exchange.CONTENT_TYPE, constant("text/xml"))
    .marshal(soap)
    .log(LoggingLevel.DEBUG, LOG, "Request xml===========>${body}")
    .log(LoggingLevel.DEBUG, LOG, "Posting request to server url")
    .to("cxf://http://<ip>:<port>/<wsdl server location without ?wsdl>?serviceClass=<qualified service class name without .class extension>&dataFormat=MESSAGE&synchronous=true&continuationTimeout=100000&serviceName={<target-name-space-name>}<service-name>&endpointName={<target-name-space-name>}<service port name>")
    .log(LoggingLevel.DEBUG, LOG, "Posted request successfully to server url")
    .log(LoggingLevel.DEBUG, LOG, "Received response from server ==========>${body}")
.end();

应用程序能够生成soap-request并能够将其发布到服务器并且服务器正在发回soap响应(由soap服务器的所有者确认)但是我看不到响应申请结束。

它使用以下日志打印请求xml:

Request xml===========> <soap request xml>
Posting request to server url
**org.apache.camel.component.cxf.feature.AbstractDataFormatFeature.removeInterceptors><removing the interceptor org.apache.cxf.interceptor.ClientFaultConverter@58811c5b
org.apache.camel.component.cxf.feature.AbstractDataFormatFeature.removeInterceptors><removing the interceptor org.apache.cxf.jaxws.interceptors.WrapperClassInInterceptor@1d25437
org.apache.camel.component.cxf.feature.AbstractDataFormatFeature.removeInterceptors><removing the interceptor org.apache.cxf.jaxws.interceptors.HolderInInterceptor@4451805d
org.apache.camel.component.cxf.feature.AbstractDataFormatFeature.removeInterceptors><removing the interceptor org.apache.cxf.jaxws.interceptors.WrapperClassOutInterceptor@2514dd3d
org.apache.camel.component.cxf.feature.AbstractDataFormatFeature.removeInterceptors><removing the interceptor org.apache.cxf.jaxws.interceptors.HolderOutInterceptor@75a76e00**
Posted request successfully to server url
Received response from server ==========> **PRINTING THE REQUEST XML**

你能帮我理解一下这个问题,为什么骆驼无法捕捉回应!是因为那些骆驼内部删除方法?

你能不能帮助我捕捉回应。

0 个答案:

没有答案