Мой запрос XPath иногда не выполняется по неизвестной причине - PullRequest
0 голосов
/ 05 октября 2018

Я создаю компонент интеграции, где я получаю XML, содержащий следующий узел:

<ns1:healthcareVisitDateTime>
    <ns1:careVisitDate>20181003</ns1:careVisitDate>
</ns1:healthcareVisitDateTime>

Я использую следующее выражение для извлечения значения ns1: careVisitDate:

xpath('//urn2:careVisitDate/text()').text

Моя проблема заключается в том, что в большинстве случаев это работает так, как задумано, но в некоторые дни происходит 8 из 600 сбоев со следующей трассировкой стека:

 Stacktrace=org.mule.api.expression.ExpressionRuntimeException: Execution       of the expression "xpath('//urn2:careVisitDate').text" failed.
 at org.mule.el.mvel.MVELExpressionLanguage.evaluateInternal(MVELExpressionLanguage.java:218)
 at org.mule.el.mvel.MVELExpressionLanguage.evaluate(MVELExpressionLanguage.java:179)
 at org.mule.expression.DefaultExpressionManager.evaluate(DefaultExpressionManager.java:234)
 at org.mule.expression.DefaultExpressionManager.evaluate(DefaultExpressionManager.java:186)
 at org.mule.util.AttributeEvaluator.resolveValue(AttributeEvaluator.java:77)

CauseException: [Error: could not access: text; in class: java.util.ArrayList]
[Near : {... xpath('//urn2:careVisitDate'). ....}]

Что может быть причиной этого?Все входящие файлы XML следуют одному и тому же xsd, и я не могу найти различий между теми, которые работают, и теми, кто не работает.

...