我使用cxf来调用远程Web服务。(与mule和spring集成)。
我想在我的类中添加一个Outbound Interceptor,为我的请求添加一些标题。
我的配置是:
<chaining-router>
<cxf:outbound-endpoint ref="facilityAuthenticationCoreEndpoint">
<cxf:outInterceptors>
<spring:bean class="com.mycompany.webservice.client.transformer.SoapHeaderEnricher"/>
</cxf:outInterceptors>
</cxf:outbound-endpoint>
<vm:outbound-endpoint address="vm://serviceResponseJob"/>
</chaining-router>
SoapHeaderEnricher
课程从AbstractSoapInterceptor
延伸,并采用handleMessage(Message message)
方法。
public class SoapHeaderEnricher extends AbstractSoapInterceptor {
public SoapHeaderEnricher() {
}
public void handleMessage(SoapMessage message) throws Fault {
do something here.
}
}
但是当我运行该服务时,会调用Web服务并收到错误的响应,因为我的handleMessage
方法永远不会被调用。
有没有人知道这个伎俩?
此致。