我已安装fuseki版本1.0.2,我可以使用 - >
成功运行它./ fuseki-server --update --loc = / home / mytdbs / tdb / ds
并在http://localhost:3030/sparql.tpl上查询。我有一个tdb,我想用java更新它。为此,我试图使用以下方式获取模型:
public static void main(String args[]){
DatasetAccessor dataAccessor = datasetAccessorFactory.createHTTP("http://localhost:3030/ds/data");
Model model = dataAccessor.getModel();
}
但是当我运行此命令时,我将得到以下异常:
java.lang.NoSuchFieldError:serviceContext at org.apache.jena.atlas.web.auth.ServiceAuthenticator.getServiceContextMap(ServiceAuthenticator.java:95) 在 org.apache.jena.atlas.web.auth.ServiceAuthenticator.getCredentials(ServiceAuthenticator.java:101) 在 org.apache.jena.atlas.web.auth.ServiceAuthenticator.getCredentials(ServiceAuthenticator.java:38) 在 org.apache.jena.atlas.web.auth.AbstractScopedAuthenticator.findCredentials(AbstractScopedAuthenticator.java:107) 在 org.apache.jena.atlas.web.auth.AbstractScopedAuthenticator.getUserName(AbstractScopedAuthenticator.java:50) 在 org.apache.jena.atlas.web.auth.AbstractScopedAuthenticator.hasUserName(AbstractScopedAuthenticator.java:60) 在 org.apache.jena.atlas.web.auth.AbstractCredentialsAuthenticator.apply(AbstractCredentialsAuthenticator.java:41) 在 org.apache.jena.riot.web.HttpOp.applyAuthentication(HttpOp.java:1226) 在org.apache.jena.riot.web.HttpOp.exec(HttpOp.java:1108)at at org.apache.jena.riot.web.HttpOp.execHttpGet(HttpOp.java:384)at org.apache.jena.riot.web.HttpOp.execHttpGet(HttpOp.java:353)at at org.apache.jena.web.DatasetGraphAccessorHTTP.doGet(DatasetGraphAccessorHTTP.java:134) 在 org.apache.jena.web.DatasetGraphAccessorHTTP.httpGet(DatasetGraphAccessorHTTP.java:123) 在 org.apache.jena.web.DatasetAdapter.getModel(DatasetAdapter.java:39)
我使用的是java 1.6和Jena 2.11.2。我对jena很新,所以我不确定其他哪些信息可能有用。非常感谢任何帮助/提示。