我的XPath查询有时由于未知原因而无法执行

时间:2018-10-05 15:05:07

标签: xml xpath mule

我正在构建一个集成组件,在其中接收包含以下节点的XML:

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

我正在使用以下表达式提取ns1:careVisitDate的值:

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

我的问题是,这在大多数情况下都可以正常工作,但是在某些情况下,在600次运行中有8次崩溃并显示以下堆栈跟踪信息:

 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,我找不到有效的文件和无效的文件。

0 个答案:

没有答案