[
https://issues.apache.org/jira/browse/CAMEL-14155?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen resolved CAMEL-14155.
---------------------------------
Resolution: Fixed
> xpath throws NPE if body is null when saxon is used as JAXP implementation
> --------------------------------------------------------------------------
>
> Key: CAMEL-14155
> URL: https://issues.apache.org/jira/browse/CAMEL-14155
> Project: Camel
> Issue Type: Bug
> Components: came-core
> Reporter: Luigi De Masi
> Assignee: Luigi De Masi
> Priority: Major
> Fix For: 3.0.0
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> despite [XPath API
> spec|https://docs.oracle.com/javase/8/docs/api/javax/xml/xpath/XPathExpression.html#evaluate-java.lang.Object-javax.xml.namespace.QName-]
> states:
>
> {quote}If a null value is provided for item, an empty document will be used
> for the context
> {quote}
> saxon, starting from 9.6, they decided to ignore it and throw NPE if the node
> is null, from [saxon
> javadoc|https://www.saxonica.com/html/documentation9.8/javadoc/net/sf/saxon/xpath/XPathExpressionImpl.html#evaluate-java.lang.Object-javax.xml.namespace.QName-]:
>
> {quote}Contrary to the interface specification, Saxon does not supply an
> empty document when the value is null. This is because XPath 2.0 allows the
> context item to be "absent" (null). So Saxon executes the XPath expression
> with the context item undefined.
> {quote}
>
> So in case of xpath expression is executed against a null body or header,
> saxon throws an NPE
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)