我使用WS Consumer组件来调用外部Web Servcie和 我正在寻找一种方法来防止在请求中生成SOAP标头。
我明确地知道如何在明确使用cxf组件时执行此操作:
<cxf:configuration enableMuleSoapHeaders="false"/>
然后在<cxf:jaxws-client ...
但是我无法弄清楚如何在使用WS Consumer时实现相同目的。 那么,有人可以提出建议吗?
谢谢,
答案 0 :(得分:1)
好的,我自己找到了答案。 基本上,WS Consumer(v3.7)没有类似于cxf组件中的enableMuleSoapHeaders的属性。 因此,您需要在java中编写逻辑代码。
首先,您需要对自己的CXF拦截器进行编码,该拦截器将遍历邮件并删除不必要的标头。
然后,您需要创建一个cxf配置文件(默认名称为cxf.xml)并将其放入mule项目类路径中。
完成此操作后,Mule将为处理的每个cxf消息调用拦截器并删除标头。
有关编码和配置cxf拦截器的更多信息,请参阅apache文档here。