当前位置: 首页 > 知识库问答 >
问题:

JENA:endpoint返回的内容类型:text/html

东郭腾
2023-03-14

当我尝试向某个endpoint发送sparql查询时,例如:

QueryExecution qe = QueryExecutionFactory.sparqlService("http://data.open.ac.uk/sparql",
                getStringForQuery());
        ResultSet results = qe.execSelect();

我明白了

Exception in thread "main" org.apache.jena.query.QueryException: Endpoint returned Content-Type: text/html which is not currently supported for SELECT queries
    at org.apache.jena.sparql.engine.http.QueryEngineHTTP.execResultSetInner(QueryEngineHTTP.java:372)
    at org.apache.jena.sparql.engine.http.QueryEngineHTTP.execSelect(QueryEngineHTTP.java:334)

这不是唯一一个我无法向其发送查询的endpoint,

我应该怎么做才能在其他内容类型中获得结果?我试着用谷歌搜索它,但我发现如果我将查询发送到错误的html(不是sparqlendpoint),就会发生这种情况,但是http://data.open.ac.uk/sparql是一个好的endpoint,我通过python向它发送sparql查询,一切都很好。

共有1个答案

匡安宜
2023-03-14

我不知道他们使用哪种后端,但无论出于何种原因,当从外部服务使用SPARQLendpoint时,您必须使用额外的HTTP参数force=true

http://data.open.ac.uk/sparql?force=true

根据ApacheJena开发团队的安迪·西伯恩的说法,这应该是Jena 3.1.1中重定向的一个错误。在版本3.1.0中,重定向到?force=true按预期工作。另外,后端是Fuseki 2.3.1。

 类似资料:
  • 我有一个Vue.js应用程序,我的部署设置非常标准, 豆荚- 这是相关代码, Dockerfile: Nginx。形态: Ingress Prod:(为了简洁起见,仅保留必要的位), 本地入口: 我得到的错误是, 未捕获的语法错误:意外令牌 未捕获的语法错误:意外令牌 网络选项卡中这两种资源的内容类型都是。 编辑1: 这是部署后我的文件夹的外观, 我的js文件的路径是,

  • 根据文档,响应自动作为JSON、XML或字符串对象提供,具体取决于响应内容。 在我的例子中,我的响应的内容类型为text/plain 这在我将字符串转换为响应,然后验证的地方工作(我已经逃过了所有的反斜杠) 这是失败的。当响应也可用作字符串时,为什么会失败 com.intuit.karate.exception.KarateExc0019:路径: $[*], 实际:["a. b. c匹配\"(\d

  • 我试图使用第三方Web服务(基于php)在asp.netc#应用程序,但失败的服务配置。已经尝试添加服务/Web引用-所有相同的错误: 响应消息的内容类型 text/html 与绑定的内容类型不匹配(text/xml;charset=utf-8)。如果使用自定义编码器,请确保正确实现 IsContentTypeSupport 方法。响应的前 402 个字节是:” [已手动编辑响应以正确显示 对我来

  • 问题内容: 我正在学习Java。我试图运行代码,但出现此错误:。它向我显示错误的代码部分。 为什么会这样呢? 问题答案: 这是因为在类中不能有两个具有相同名称但返回类型不同的方法。 子类不能使用与返回类型不同的超类中已经存在的方法相同的名称声明方法。 但是,子类可以声明具有与超类相同的签名的方法。我们称此为“覆盖”。 你需要这个 要么 一个好的做法是通过注释标记覆盖的方法:

  • G-WAN4.3.11正在以“text/plain”类型返回我的所有csp文件。这怎么能修好?!目前,它只是一个静态文件服务器。 例如,//127.0.0.1:8080/?hello.py以“Hello,Python! ”(作为text/plain)响应 这应该返回“Hello,Python!”不显示 (以text/html形式)

  • 我在一个spring MVC控制器中有一个简单的REST方法,如下所示,它有一个签名: @RequestMapping(value=“/person/{personId}”,method=RequestMethod.Get)public@ResponseBody对象getPerson(@PathVariable(“personId”)String personId){ ...} 输出为类型,因为从