0

这是关于 BPEL 中的 xml 转换。在我的 bpel 流程中,数据来自两个不同的来源(partnerLinks)。来自两个来源的数据采用相同的 xml 格式。我需要将两个 XML 文档中的数据合并为一个 xml 文档,然后将其传递回 ESB。我正在尝试使用 bpel:doXslTransform())。我不确定如何在一次调用中将来自 partnerLinks 的两个响应传递给该函数。

我尝试将两个响应连接成一个消息类型变量中的字符串,然后将其传递给 bpel:doXslTransform()。这是合并数据的正确方法吗?

4

1 回答 1

1

是的,您可以在此处执行 bpel:doXslTransform。

这涉及从一个服务接收 XML 文档,将其转换为不同的模式以形成新的请求消息,并将新请求发送到另一个服务。这种文档转换可以通过 bpel:doXslTransform 函数使用 XSLT 完成。

<variables>
   <variable name="A" element="foo:AElement" />
   <variable name="B" element="bar:BElement" />
</variables>
...
<sequence>
   <invoke ... inputVariable="..." outputVariable="A" />
   <assign>
      <copy>
         <from>
            bpel:doXslTransform("urn:stylesheets:A2B.xsl", $A)
         </from>
         <to variable="B" />
      </copy>
   </assign>
   <invoke ... inputVariable="B" ... />
</sequence>

请参阅http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html了解更多信息。

于 2013-01-28T16:54:06.230 回答