0
cxfサービスのSoapメッセージでSoapHeaderタグが呼び出されません。SoapMessageからCXFサービスへのsoapHeadersがapache camelで渡されない
私はCXFを定義しています:サービスのcxfEndpoint:私の現在のコードは以下の通りです
<cxf:cxfEndpoint id="testService" address="${testserviceurl}"
serviceClass="com.test.service.class" wsdlURL="test.wsdl"
endpointName="ns:test" serviceName="ns:TestService"
xmlns:ns="target.name.space.of.the.service">
<cxf:properties>
<entry key="dataFormat" value="PAYLOAD" />
</cxf:properties>
</cxf:cxfEndpoint>
そして、私のCXFエンドポイントを呼び出す前に、私はとSoapHeaderはを設定している:
CxfPayload<SoapHeader> payload = exchange.getIn().getBody(
CxfPayload.class);
List<SoapHeader> headers = payload.getHeaders();
SoapHeader header = new SoapHeader(new QName("HeaderName"), "Test");
headers.add(header);
私はまたアプローチを試みた:
List<SoapHeader> soapHeaders = CastUtils.cast((List<?>) exchange
.getIn().getHeader(Header.HEADER_LIST));
if (soapHeaders == null) {
// we just create a new soap headers in case the header is null
soapHeaders = new ArrayList<SoapHeader>();
}
SoapHeader header = new SoapHeader(new QName("HeaderName"),
"Test");
header.setDirection(Direction.DIRECTION_OUT);
soapHeaders.add(header);
誰でも助けてもらえますか?
こんにちはVijendra、ご回答いただきありがとうございます。リクエストヘッダーを設定することはできますが、この問題は、ペイロードメッセージの ''タグの下にあるSOAPヘッダーにあります。 –
Prasann