Подключение к конечной точке DBpedia за брандмауэром Proxy - PullRequest
1 голос
/ 31 марта 2012

Я работаю над проектом, который использует наборы данных DBpedia, и я хотел бы подключиться к ним удаленно через конечные точки sparql, которые они предоставляют. Теперь я должен работать за прокси-сервером колледжа и не могу получить свой код для подключения к конечным точкам DBpedia sparql. До сих пор я пытался установить в настройках прокси через System.getProperties (), но он все еще не работает и выдает неизвестное исключение хоста. Я прикрепил свой сегмент кода ниже вместе с брошенным исключением. Любое предложение будет приветствоваться.

System.getProperties().put("proxySet","true");
System.getProperties().put("http.proxyHost", "http://username:pwd@172.31.1.6");
System.getProperties().put("proxyPort",8080);
String q= "SELECT ?p ?o WHERE { <http://dbpedia.org/resource/Mendelian_inheritance> ?p    ?o . }";
Query query = QueryFactory.create(q);
QueryExecution qexec = QueryExecutionFactory.sparqlService("http://dbpedia.org/sparql", query);
ResultSet results = qexec.execSelect();
while (results.hasNext()) {
QuerySolution result = results.nextSolution();
RDFNode s = result.get("s");
RDFNode p = result.get("p");
RDFNode o = result.get("o");
System.out.println( " { " + s + " " + p + " " + o + " . }");
}

Выдается следующее исключение:

Exception in thread "main" HttpException: java.net.UnknownHostException: dbpedia.org: java.net.UnknownHostException: dbpedia.org
    at com.hp.hpl.jena.sparql.engine.http.HttpQuery.execGet(HttpQuery.java:203)
    at com.hp.hpl.jena.sparql.engine.http.HttpQuery.exec(HttpQuery.java:144)
    at com.hp.hpl.jena.sparql.engine.http.QueryEngineHTTP.execSelect(QueryEngineHTTP.java:141)
    at project6.Main.main(Main.java:53)
Caused by: java.net.UnknownHostException: dbpedia.org
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:177)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
    at java.net.Socket.connect(Socket.java:529)
    at java.net.Socket.connect(Socket.java:478)
....

Так же, как нижний колонтитул, я попытался установить URL-адрес sparql на http://dbpedia.org/snorql

1 Ответ

1 голос
/ 01 апреля 2012

Возможно, вам следует использовать «http.proxyPort» вместо «proxyPort». :-) Кроме того, в системе есть метод setProperty (строковый ключ, строковое значение), который вы можете использовать.

...