0

我有一个变量设置为

<set-variable variableName="productIdvar" value="#[xpath://productId]" doc:name="Variable" />

在记录它的正确方向时,

我想在我的 xpath 表达式中使用变量 productIdvar 的值,

<when expression="//*[local-name()='itemid']=?" evaluator="xpath">

或者

<when expression="#[xpath://*[local-name()='itemid']=?]">

我应该用什么代替?获取变量的值?

谢谢拉胡尔。

4

4 回答 4

2

以下表达式应该适合您。

<when expression="#[xpath('//*[local-name()=\'itemid\']').text == productIdvar ]">

这样,您应该能够将 xpath 的结果与“productIdVar”变量进行比较。

希望这可以帮助。

于 2013-08-02T16:28:51.437 回答
0

如果你的 MEL 有点乱,试试我的mule-module-dxpath - 一个动态解析 XPath 变量的 XPath 转换器。

于 2015-01-15T12:08:28.620 回答
0
<when expression="#[xpath('//*[local-name()=itemid]') == productIdvar ]">

itemid请注意,表达式中没有引号

于 2013-08-02T12:54:13.497 回答
0

您可以使用 XPATH3 并尝试类似这样
#[xpath3('/products/validlity')== flowVars.productIdvar]
的 Xpath3 参考:- https://developer.mulesoft.com/docs/display/current/XPath

于 2015-08-05T06:18:30.857 回答