Claude Warren created JENA-1455: ----------------------------------- Summary: QueryBuilder allows Node_Variable instances into QueryTripleIterator Key: JENA-1455 URL: https://issues.apache.org/jira/browse/JENA-1455 Project: Apache Jena Issue Type: Bug Components: QueryBuilder Affects Versions: Jena 3.6.0 Reporter: Claude Warren Assignee: Claude Warren Priority: Minor
Using Node_Variable instances in Quads and Triples to to methods results in Node_Variable instances appearing in the QueryTripleIterator. QueryTripleIterator at line 87 calls Var.isVar(node) which throws an exception if the node is a Node_Variable. But based code following line 87 I think that Node_Variable should be accepted. {noformat} private static Node substitute(Node node, Binding binding) { if ( Var.isVar(node) ) // <---- line 87 { Node x = binding.get(Var.alloc(node)) ; if ( x != null ) return x ; } return node ; } {noformat} QueryTripleIterator is internal code and is only expecting Var instances. The solution is to fix the QueryBuilder code so that it only produces Var in the queries resulting from a build() execution. -- This message was sent by Atlassian JIRA (v6.4.14#64029)