在xpath表达式中使用mule变量值

时间:2013-08-02 06:32:10

标签: xpath expression mule mule-studio

我有一个变量设置为

<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 个答案:

答案 0 :(得分:2)

以下表达式适合您。

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

这样你就可以将xpath的结果与“productIdVar”变量进行比较。

希望这有帮助。

答案 1 :(得分:0)

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

请注意,表达式

中的itemid周围没有引号

答案 2 :(得分:0)

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

答案 3 :(得分:0)

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