无法从负载中删除命名空间

问题描述 投票:0回答:1

大家好,我正在尝试在 wso2 MI 中创建有效负载,并且已经编写了代码,因此对于下面提到的代码:

    <payloadFactory media-type="xml">
      <format>
        <soapenv:Envelope xmlns:chan="http://www.tibco.com/ChangeSubOfferingAPI/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
          <soapenv:Header/>
            <soapenv:Body>
              <chan:ChangeSubOfferingRqsAPI>
                <Header>
                  <Username>$1</Username>
                </Header>
                <Body>
                  <SerialNo>$2</SerialNo>
                </Body>
              </chan:ChangeSubOfferingRqsAPI>
            </soapenv:Body>
         </soapenv:Envelope>
       </format>
       <args>
         <arg evaluator="xml" expression="$ctx:userName"/>
         <arg evaluator="xml" expression="$ctx:password"/>
       </args>
  </payloadFactory>

我得到这个有效负载:

<?xml version='1.0' encoding='utf-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:chan="http://www.tibco.com/ChangeSubOfferingAPI/">
    <soapenv:Body>
        <chan:ChangeSubOfferingRqsAPI>
            <Header xmlns="http://ws.apache.org/ns/synapse">
                <Username>abcd</Username>
            </Header>
            <Body xmlns="http://ws.apache.org/ns/synapse">
                <SerialNo>100000000</SerialNo>
            </Body>
        </chan:ChangeSubOfferingRqsAPI>
    </soapenv:Body>
</soapenv:Envelope>

任何人都可以帮助我理解如何更改有效负载工厂以便从 Header 和 Body 标记中删除 xmlns 的指南吗?就像而不是“”,我希望它是“”,仅适用于 Body 标签。任何支持都会很棒。

谢谢

xml wso2 xml-namespaces payload wso2-micro-integrator
1个回答
0
投票

您需要向您的有效负载添加一个空命名空间,例如

xmlns=""

<payloadFactory media-type="xml">
      <format>
        <soapenv:Envelope xmlns="" xmlns:chan="http://www.tibco.com/ChangeSubOfferingAPI/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
          <soapenv:Header/>
            <soapenv:Body>
              <chan:ChangeSubOfferingRqsAPI>
                <Header>
                  <Username>$1</Username>
                </Header>
                <Body>
                  <SerialNo>$2</SerialNo>
                </Body>
              </chan:ChangeSubOfferingRqsAPI>
            </soapenv:Body>
         </soapenv:Envelope>
       </format>
       <args>
         <arg evaluator="xml" expression="$ctx:userName"/>
         <arg evaluator="xml" expression="$ctx:password"/>
       </args>
</payloadFactory>

© www.soinside.com 2019 - 2024. All rights reserved.