2

我正在尝试对 bpel 赋值语句中的 xml 结构进行 XSL 转换。存在语法问题,但我无法找到官方文档。互联网上到处都有例子,但我没有找到明确的解释。这是我最好的镜头。最后两个参数有什么作用?为什么 eclipse 说第一个参数必须是文字,即使 test3.xsl 是一个字符串?

<bpel:assign validate="yes" name="Assign">
    <bpel:copy keepSrcElementName="no">
        <bpel:from>
            <![CDATA[bpel:doXslTransform("test3.xsl", $personalInfoServiceOutput.parameters), "middle", $positionSkillManagementInput]]>
        </bpel:from>
        <bpel:to variable="positionSkillManagementInput"></bpel:to>
    </bpel:copy>
</bpel:assign>
4

3 回答 3

2

doXSLTransform 的签名如下所示:

object bpel:doXslTransform(string, node-set, (string, object)*)

第一个参数是 XSLT 脚本的名称,第二个参数是标识源文档的 XPath(例如,变量、部分、节点集、节点)。第三个和第四个参数是一个键值对,字符串是键,对象是值。这些对被映射到脚本的参数上下文中,以便您可以通过脚本中的名称访问这些值。这些对可以有任意数量。

查找此类内容的最佳资源是WS-BPEL 2.0 规范,doXSLTransform 在 Sect 中进行了描述。8.4

于 2013-04-23T08:05:12.637 回答
0

我遇到了同样的问题。同意 NGoyal。在 BPEL 中显示错误,但在部署时有效。

于 2015-02-12T11:35:37.023 回答
0

当我使用以下代码时:

<bpel:copy keepSrcElementName="no">
<bpel:from>
<![CDATA[bpel:doXslTransform("parseSample.xsl", $output.payload)]]>
</bpel:from>
<bpel:to variable="output"></bpel:to>
</bpel:copy>

我也得到错误,第一个参数必须是文字字符串。

但是,当我将我的服务(有错误)部署到 wso2 bps 时,它工作正常。

你可以试试这个。

于 2013-06-04T07:19:47.583 回答