替换整个节点和替换OSB中的节点内容之间的区别

时间:2016-02-05 14:17:14

标签: osb

我最近开始使用OSB,我遇到了“替换整个节点或替换节点内容”的功能。任何人都可以通过示例帮助我列出两者之间的差异。 这是一个非常基本的问题,但我刚刚开始学习osb并想要做到这一点。

提前致谢。

干杯..

1 个答案:

答案 0 :(得分:4)

好的,我们假设你有一个变量$body。你的代理已经做了一些东西,并且已经设置了$ body,你想在返回之前通过xquery转换运行它。

$ body将类似于

<soap:Body xmlns:soap="etc">
  <ns0:response xmlns:ns0="etc2">
    <ns0:item>
      <!-- etc etc -->
    </ns0:item>
  </ns0:response>
</soap:Body>

如果替换整个节点,则必须将其替换为<soap:Body>。 (我的意思是,你可能用不同的东西替换它,但你会在某处遇到错误,因为OSB希望$ body是某种类型)

如果替换节点内容,则可以将其替换为任何内容:可能是已转换的<ns0:response>,但通常用完全不同的元素替换它。无论哪种方式,<soap:Body>元素都不受影响,并且所有内部都被挖出并替换。

大多数情况下,您将替换$ body的节点内容而不是替换整个节点,但如果它是您自己创建的变量,那么它可能会取决于什么你想要的。