2016-04-27 10 views
1

Ich habe versucht, einen Datensatz mit einem DataAccessor von jena withlGibt es eine Möglichkeit, einen DataAccessor von jena zu verwenden, um das Graphspeicherprotokoll virtuos zu verwenden?

DatasetAccessor authAcc = DatasetAccessorFactory.createHTTP("http://192.168.56.101:8890/sparql-graph-crud-auth", auth); 
authAcc.putModel("oole:g1",dataset.getDefaultModel()); 

Aber es scheint nicht einfügen zu arbeiten, ich habe auch versucht, mit curl die gleichen Datei zu setzen und ich einen Unterschied im HTTP-Header ausgemacht.

aus Jena:

PUT /sparql-graph-crud-auth?graph=oole:g1 HTTP/1.1 

Während von curl tun:

curl --digest --user usr:pwd --verbose --url "http://192.168.56.101:8890/sparql-graph-crud-auth?graph-uri=oole:g1" -T file.ttl 

ich:

PUT /sparql-graph-crud-auth?graph-uri=oole:g1 HTTP/1.1 

Der Unterschied scheint Graph-uri zu sein, wie an Graph oppsed. Kann ich den DataAccessor aus Jena noch benutzen?

Antwort

0

DatasetAccessor ist die API zum SPARQL Graph Store Protocol und dort heißt es . Dies ist in DatasetAccessorGraphHTTP verdrahtet.

Als Open Source, wenn Sie etwas anderes benötigen, könnten Sie eine Kopie dieser einen Klasse nehmen, sie lokal ändern (Methode DatasetAccessorGraphHTTP.target), um Ihre eigene Implementierung zu haben.

Es ist alles auf einigen HTTP-Komfort-Code in HttpOp gebaut, die Sie direkt aufrufen konnten, aber Ihre eigenen DatasetAccessorGraphHTTP aussieht, um weniger Arbeit zu sein.

Verwandte Themen