AndroJena测试应用中的畸形反射

时间:2015-03-27 21:32:16

标签: android jena malformedurlexception

我尝试使用AndroJena Api在Android项目中查询DBpedia。这是我的功能:

    public  void Jena()throws IOException 
{ 
    String sparqlQuery="PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>\n" + 
"SELECT DISTINCT ?film_URI \n" +
        "WHERE {\n" +
        "?film_URI rdf:type <http://dbpedia.org/ontology/Film> . \n" +
        "} Limit 10" ;
String service=  "http//dbpedia.org/sparql";
Query qur=QueryFactory.create(sparqlQuery);
QueryExecution exec = QueryExecutionFactory.sparqlService(service,qur );
ResultSet results = ResultSetFactory.copyResults( exec.execSelect() );
ResultSetFormatter.out( results );
} 

但是当我在mainActivity类中调用此函数时,这会产生MalformedUrlException:

FATAL EXCEPTION: main java.lang.RuntimeException: Unable to start activity
componentInfo{com.example.testtvprg/com.example.testtvprg.MainActivity}: HttpException: 0
Malformed URL: java.net.MalformedURLException: Protocol not found: http//dbpedia.org/sparql?
query=PREFIX++rdf%3A++%3Chttp%3A%2F%2Fwww.w3.org%2F1999%2F02%2F22-rdf-syntax-
ns%23%3E%0A%0ASELECT+DISTINCT++%3Ffilm_URI%0AWHERE%0A++%7B+%3Ffilm_URI++rdf%3
Atype++%3Chttp%3A%2F%2Fdbpedia.org%2Fontology%2FFilm%3E+.+%7D%0ALIMIT+++10%0
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2092)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2117)

请帮帮我

2 个答案:

答案 0 :(得分:0)

String service=  "http//dbpedia.org/sparql";

应为http:

答案 1 :(得分:0)

在asynctask中运行它,它将解决问题。