我在项目中运行以下代码,因为我正在尝试访问sesame服务器中的存储库:
try{
String serverUrl = "http://localhost:8080/openrdf-sesame";
String repositoryID ="200";
RepositoryProvider.getRepositoryManager(serverUrl);
Repository myRepository =new HTTPRepository(serverUrl,repositoryID);
myRepository.initialize();
RepositoryConnection con= myRepository.getConnection();
}
我甚至使用调试来查找错误的来源,但它看起来来自:
RepositoryConnection con= myRepository.getConnection();
当我运行代码时,得到以下错误。
HTTP Status 500 -
type Exception report
message
descriptionThe server encountered an internal error () that prevented it from fulfilling this request.
exception
java.lang.NoSuchMethodError: org.openrdf.model.impl.ValueFactoryImpl.getInstance()Lorg/openrdf/model/impl/ValueFactoryImpl;
note The full stack traces of the exception and its root causes are available in the GlassFish Server Open Source Edition 3.1.1 logs.
答案 0 :(得分:0)
NoSuchMethodError
通常表示您使用不同版本的库正在运行您的程序,而不是编译它。一个常见原因是您的运行时类路径包含同一个库的多个版本,而JRE选择“错误的”。
由于此情况下的错误发生在服务器端,因此您应该查看GlassFish部署,并确保它不包含多个版本的Sesame库。