[ https://issues.apache.org/jira/browse/JENA-1455?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claude Warren resolved JENA-1455. --------------------------------- Resolution: Fixed Fix Version/s: Jena 3.7.0 Added additional checks and processing of quads and triples when queries are being built. > 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 > Fix For: Jena 3.7.0 > > > 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)