[ 
https://issues.apache.org/jira/browse/JENA-466?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13674216#comment-13674216
 ] 

Andy Seaborne edited comment on JENA-466 at 6/4/13 10:13 AM:
-------------------------------------------------------------

You have created an ASK query but used execDescribe() -- you want execAsk().

The result of an ASK query is not an RDF model but one of the result set 
formats.  So the remote endpoint is correctly returning 
application/sparql-results+xml, and you can't treat that as an RDF model.

BTW: You don't have to QueryEngineHTTP directly - the public API of 
QueryExecutionFactory has createRemote operations.

Similarly, SPARQLResult is mainly an internal class.
                
      was (Author: andy.seaborne):
    You have created an ASK query but used execDescribe() -- you want execASK().

The result of an ASK query is not an RDF model but one of the result set 
formats.  So the remote endpoint is correctly returning 
application/sparql-results+xml, and you can't treat that as an RDF model.

BTW: You don't have to QueryEngineHTTP directly - the public API of 
QueryExecutionFactory has createRemote operations.

Similarly, SPARQLResult is mainly an internal class.
                  
> a QueryEngineHTTP doesn't handle the returned content type after an 
> execModel() call.
> -------------------------------------------------------------------------------------
>
>                 Key: JENA-466
>                 URL: https://issues.apache.org/jira/browse/JENA-466
>             Project: Apache Jena
>          Issue Type: Bug
>          Components: ARQ
>    Affects Versions: Jena 2.10.0
>            Reporter: ArthurVaisse-Lesteven
>              Labels: ASK, Jena-2.10.0, QueryEngineHTTP, content-type
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> When executing this simple piece of code : 
> public class test {
>       public static void main(String[] argv){
>               String request = "Ask from <http://example.com#graphe> where 
> {<http://example.com#ProofOfConcept> ?p ?o}";
>               String endpoint = "http://localhost:3030/ds/query";;
>               Query query;
>               try{
>               query = QueryFactory.create(request);
>               }
>               catch(Exception e){
>                       throw e;
>               }               
>               QueryEngineHTTP query_engine = new QueryEngineHTTP(endpoint, 
> query);
>               try{
>                       SPARQLResult spqlr = new 
> SPARQLResult(query_engine.execDescribe());
>               }
>               finally{
>                       query_engine.close();
>               }
>       }
> }
> I got the following exception :
> Exception in thread "main" com.hp.hpl.jena.query.QueryException: Endpoint 
> returned Content Type: application/sparql-results+xml which is not a valid 
> RDF Graph syntax
>       at 
> com.hp.hpl.jena.sparql.engine.http.QueryEngineHTTP.execModel(QueryEngineHTTP.java:275)
>       at 
> com.hp.hpl.jena.sparql.engine.http.QueryEngineHTTP.execDescribe(QueryEngineHTTP.java:251)
>       at 
> com.hp.hpl.jena.sparql.engine.http.QueryEngineHTTP.execDescribe(QueryEngineHTTP.java:248)
>       at test.main(test.java:29)
> The same error occurs when I change the endpoint to a Sesame repository. So I 
> think the problem come from the code who receive the repository response and 
> check content type. He probably wait another content type.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to