我正致力于Spring集成,用于调用soap服务。我能够成功使用出站网关呼叫soap服务。现在我需要使用相同的请求调用相同的soap服务,现在我需要在http header中添加一些参数。任何人都可以帮助我完成这项任务。非常感谢你提前。
答案 0 :(得分:0)
您可以request-callback
注入<int-ws:outbound-gateway>
:
public class AddHeaderWebServiceMessageCallback implements WebServiceMessageCallback {
public void doWithMessage(WebServiceMessage message) {
CommonsHttpConnection connection = (CommonsHttpConnection) context.getConnection();
PostMethod postMethod = connection.getPostMethod();
postMethod.addRequestHeader( "foo", "bar" );
}
}
或者......如果你需要为每个requestMessage
做一个dinamically,你应该使用自定义SoapHeaderMapper
克服这个问题。您可以从CommonsHttpConnection
TransportContextHolder.getTransportContext().getConnection()
的位置