【问题标题】:How to set Xpath based on a specific condition in esql如何根据esql中的特定条件设置Xpath
【发布时间】:2022-02-18 05:33:20
【问题描述】:

我正在使用 IBM App Connect 11。我需要将 xpath 作为字符串传递给 esql 方法。Xpath 对应于特定元素“文本”,因此我还需要传递 keyIdentifier='TIN' 的条件.我试过这样:

SET xpathStr = '/getDocumentList/searchType/KeySet[keyIdentifier=TIN]/text';

我无法将 [keyIdentifier='TIN'] 作为整个语句本身的字符串,因此会出现语法错误。

输入xml:

<getDocumentList>
<searchType>
<KeySet>
  <keyIdentifier>SIN</keyIdentifier>
  <text>abc</text>
</KeySet>
<KeySet>
  <keyIdentifier>TIN</keyIdentifier>
  <text>xyz</text>
</KeySet>
</searchType>
</getDocumentList>

【问题讨论】:

    标签: xml xpath ibm-integration-bus extended-sql ibm-app-connect


    【解决方案1】:

    您可以使用SELECT 执行此操作,另请参阅Returning a scalar value in a message

    DECLARE myText CHAR THE(
        SELECT ITEM FIELDVALUE(a.text)
          FROM InputRoot.XMLNSC.getDocumentList.searchType.KeySet[] AS a
         WHERE a.keyIdentifier = 'TIN'
        );
    

    【讨论】:

    • 我需要将此 xpath 字符串传递给 java 方法。我不能在 xpath 表达式中使用 SELECT 对
    猜你喜欢
    • 2021-02-22
    • 1970-01-01
    • 2011-09-29
    • 2019-06-11
    • 2023-03-05
    • 2012-12-08
    • 2019-08-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多