Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.4.2, 2.4.4, 2.5.2, 2.6
Description
When adding the following to org.apache.jackrabbit.spi.commons.query.xpath.QueryFormatTest:
public void testChildStarName() throws Exception { checkStatement("//element(*, foo)[child::*/@bar = 'bla']"); }
a NullPointerException is thrown while parsing:
java.lang.NullPointerException at org.apache.jackrabbit.spi.commons.query.xpath.QueryFormat.visit(QueryFormat.java:351) at org.apache.jackrabbit.spi.commons.query.RelationQueryNode.accept(RelationQueryNode.java:115) at org.apache.jackrabbit.spi.commons.query.xpath.QueryFormat.visit(QueryFormat.java:317) at org.apache.jackrabbit.spi.commons.query.LocationStepQueryNode.accept(LocationStepQueryNode.java:166) at org.apache.jackrabbit.spi.commons.query.xpath.QueryFormat.visit(QueryFormat.java:260) at org.apache.jackrabbit.spi.commons.query.PathQueryNode.accept(PathQueryNode.java:74) at org.apache.jackrabbit.spi.commons.query.xpath.QueryFormat.visit(QueryFormat.java:115) at org.apache.jackrabbit.spi.commons.query.QueryRootNode.accept(QueryRootNode.java:115) at org.apache.jackrabbit.spi.commons.query.xpath.QueryFormat.<init>(QueryFormat.java:75) at org.apache.jackrabbit.spi.commons.query.xpath.QueryFormat.toString(QueryFormat.java:95) at org.apache.jackrabbit.spi.commons.query.xpath.QueryFormatTest.checkStatement(QueryFormatTest.java:80) at org.apache.jackrabbit.spi.commons.query.xpath.QueryFormatTest.testChildStarName(QueryFormatTest.java:71)
This is a regression from Jackrabbit 1.6.5, where a similar test does run, i.e. parsing does not throw exception.
The same NPE happens when "child::" is dropped, i.e. when the query looks like this:
"//element(*, foo)[*/@bar = 'bla']"