xml - 从 BPEL 中的 SOAP 主体请求字符串中提取 XPath

标签 xml web-services oracle xpath bpel

我正在使用 JDeveloper 编写 BPEL 流程。当我尝试从我的请求 xml 中提取节点的值时遇到问题。

请求 XML 如下:

<ConvertTemp xmlns="http://www.nikhil.net/">
   <Temperature>200</Temperature>
   <FromUnit>degreeCelsius</FromUnit>
   <ToUnit>degreeFahrenheit</ToUnit>
</ConvertTemp>

我能够从 SOAP 主体中提取请求 XML 字符串并将其放入另一个字符串变量(比如 strRequest)。

我正在尝试从此 strRequest 变量中提取 Temperature 节点的值(即 200)。我会将其转换为数字并将其分配给另一个 double 类型的变量。

对于提取温度节点值的函数,我的 XPath 查询应该是什么?

number(bpws:getVariableData('strRequest', '', '<XPath query>'))

我试过了

bpws:getVariableData('strRequest', '', '/ConvertTemp/Temperature/')
bpws:getVariableData('strRequest', '', '/ConvertTemp/Temperature')
bpws:getVariableData('strRequest', '', 'Temperature')
bpws:getVariableData('strRequest', 'strRequest', '/ConvertTemp/Temperature')
bpws:getVariableData('strRequest', 'strRequest', 'Temperature')

和类似的组合。 输出:上述所有试验的 NaN

最佳答案

试试 bpws:getVariableData('strRequest', '', '/ConvertTemp/Temperature/text()')

因为'200'是Temperature节点下的text节点

关于xml - 从 BPEL 中的 SOAP 主体请求字符串中提取 XPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13626987/

相关文章:

xml - 是否有一个好的开源、基于 XSD 的 Web 编辑器?

XMLStarlet、XPath - 如何根据节点删除属性

xml - 如何使用xpath在xml中查找数字数据类型信息

oracle - 如何将oracle中的IDENTITY列重置为新值

xml - VBA Excel SelectSingleNode 语法

java - WebSphere 5.1 到 6.1 迁移错误

java - WebLogic javax.net.ssl.SSLHandshakeException

asp.net - 如何在 Visual Studio 中生成 Web 服务的 WSDL 文件

database - ORA-00904 : "TOTAL_ORDERS": invalid identifier

java - Java中Oracle表变化的通知