我尝试使用jena框架在Java Web应用程序中创建INSERT查询。我想在Fuseki三重商店中为一个特定的命名图插入一些三元组。 我尝试过使用下面的代码
UpdateRequest update = UpdateFactory.create("INSERT DATA { graph <http://graph/my> { "+ string_triples + "}}");
UpdateProcessor processor = UpdateExecutionFactory.createRemote(update, "http://fusekidomain/ds/sparql");
processor.execute();
但它没有奏效,我得到了一个&#34; java.lang.ClassNotFoundException: org.apache.http.protocol.HttpContext
&#34;错误。
我猜测我的代码中遗漏了一些东西,但我不确定它是什么。
答案 0 :(得分:2)
java.lang.ClassNotFoundException
:程序的类路径中至少缺少一个jar。
使用maven或其他构建工具来管理依赖项,或者将Jena分发lib目录中的所有jar放在类路径上。
答案 1 :(得分:1)
我想发表评论,但在StackOverflow上却没有足够的声誉......; - )
你可以通过包含完整的Java堆栈跟踪来编辑你的帖子吗?
您是否检查过项目中可能的依赖项冲突?有时,当另一个依赖项未使用由另一个依赖项导入的库的相同版本时,会发生此错误(请参阅此post)。
如果您的项目是maven项目,您可以使用以下命令列出所有依赖项:
mvn dependency:tree -Dverbose
希望它有所帮助;)
答案 2 :(得分:0)
谢谢你们的回答。事实证明我确实错过了一些罐子,我有一个重复的罐子,因此没有找到异常。当我添加它们时它工作正常。