wso2esb enrich mediator删除节点soap:Header

时间:2014-08-14 06:44:20

标签: soap wso2esb

我有2个孩子wsse:soap中的安全性:Header并尝试删除一个。我尝试用Enrich Mediator做这个,但不是替换soap:Header它删除了。以下是复制它的简单示例:

<inSequence>
     <enrich>
        <source type="inline" clone="true">
           <soapenv:Header xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
              <foo/>
           </soapenv:Header>
        </source>
        <target xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                xpath="//soapenv:Header"/>
     </enrich>
     <log level="full"/>
  </inSequence>

日志中介日志消息,不带标头。如果我添加到目标操作=&#34; child&#34;,一切都按预期工作。所以我有两个问题: 为什么要充实调解员这样做? 2.如何以其他方式更改标题?

1 个答案:

答案 0 :(得分:0)

您应该使用标头介体来更改SOAP标头

看看那里:https://docs.wso2.com/display/ESB481/Header+Mediator

添加自定义标题的示例:

<header xmlns:myns="http://com/header" name="myns:MyHeader" value="0"/>

将其删除的示例:

<header xmlns:myns="http://com/header" name="myns:MyHeader" action="remove"/>

您可以使用此介体更改http标头:只需添加一个范围属性,其值等于&#39; transport&#39;