Vadim Gubin created JENA-1739:
---------------------------------

             Summary: Using Path in UpdateBuilder#addWhere throws an Exception
                 Key: JENA-1739
                 URL: https://issues.apache.org/jira/browse/JENA-1739
             Project: Apache Jena
          Issue Type: Bug
          Components: ARQ
    Affects Versions: Jena 3.10.0
            Reporter: Vadim Gubin


java.lang.IllegalArgumentException: Predicate ("[some path here, for example 
(S|^S)/((S|^S))?]"^^java:org.apache.jena.sparql.path.P_Seq) must be a Path, URI 
, variable, or a wildcard. 
Is a prefix missing? Prefix must be defined before use.


 at 
org.apache.jena.arq.querybuilder.updatebuilder.WhereQuadHolder.testTriple(WhereQuadHolder.java:190)
 at 
org.apache.jena.arq.querybuilder.updatebuilder.WhereQuadHolder.addWhere(WhereQuadHolder.java:204)
 at 
org.apache.jena.arq.querybuilder.UpdateBuilder.addWhere(UpdateBuilder.java:813)
 at 
org.apache.jena.arq.querybuilder.UpdateBuilder.addWhere(UpdateBuilder.java:983)
 at 
org.apache.jena.arq.querybuilder.UpdateBuilder.addWhere(UpdateBuilder.java:1012)

 
h4. How to reproduce:

Path path = createSomePath()...

UpdateRequest update = new UpdateRequest(new UpdateBuilder()

.addWhere(subject, path, object)

.build());

 

RDFConnectionRemoteBuilder connectionBuilder = 
connectionBuilderFactory.createConnectionBuilder();


try (RDFConnection connection = connectionBuilder.build()) {
 connection.update(update);
}
h4. Workaround:

.addWhere(new TriplePath(subject, path, object));



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to