【问题标题】:How to use xpath xpression to check if data is present or not in wso2 ESB?如何使用 xpath xpression 检查 wso2 ESB 中是否存在数据?
【发布时间】:2016-06-16 20:49:52
【问题描述】:

我已经在一个属性中捕获了我的输入 ID,现在我想验证该属性是否有数据。这个怎么做?我做过这样的事情:

这是我设置的属性:

<property xmlns:cct="http://www.tempuri.org/" name="ID" expression="//cct:ID" scope="default" type="STRING"/>

这是我的 xpath xpression,它应该验证属性是否有数据:

count(get-property(ID)[text()])>0

但是这个表述是错误的。如何解决这个问题。请帮忙。在此先感谢

【问题讨论】:

    标签: xpath wso2 wso2esb esb


    【解决方案1】:

    将您的属性更改为:

    <property xmlns:cct="http://www.tempuri.org/" name="ID" expression="//cct:ID/text()" scope="default" type="STRING"/>
    

    然后使用测试

    boolean(get-property('ID'))
    

    【讨论】:

      【解决方案2】:

      应该像下面这样,

      count(/property[@name='ID']/text())
      

      请注意,正确的路径(而不是 /property/..)取决于您的 xml。如果不确定路径,您也可以使用 /*/property/...。

      【讨论】:

      • 但这里有一个问题。当我从 try-it 传递空值,即 时,在属性中我得到这个值: ID = tempuri.org"/>.So 每当我检查属性中的值时,我总是会获取数据,但我想检查属性中是否存在有效数据?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-07
      • 2018-08-22
      • 2012-08-30
      相关资源
      最近更新 更多