2013-06-03 45 views
0

我正在做以下请求:Apache solr糟糕的JSON响应?

GET/solr的/ populationvars8 /选择Q = POB &重量= JSON & json.wrf = jQuery191039282788056880236_1370268228739 &行= 2 & HL =真& hl.fl = description_autocomplete & _ = 1370268228740 HTTP/1.1

响应的意思是通过jquery自动完成呈现。问题在于“突出显示”的数据被错误地返回(或者我认为)。这里是我的回应的一部分:

{ 
    "responseHeader": { 
     "status": 0, 
     "QTime": 29 
    }, 
    "response": { 
     "numFound": 491, 
     "start": 0, 
     "docs": [ 
      { 
       "description": "Población de 70 años y más", 
       "description_autocomplete": "Población de 70 años y más", 
       "accesibilidad": "y" 
      }, 
      { 
       "description": "Población de 65 años y más", 
       "description_autocomplete": "Población de 65 años y más", 
       "accesibilidad": "y" 
      } 
     ] 
    }, 
    "highlighting": { 
     "": { 
      "description_autocomplete": [ 
       "Población de 65 años y más" 
      ] 
     } 
    } 
} 

的问题是,“高亮”的反应有一些不好的键/值对(重复键的名字,因为它是空白)。结果是,当解析这个JSON时,我总是得到最后的“description_autocomplete”数据。如果你想看看实际的结果是什么,你可以将JSON代码复制粘贴到jsonlint.com中,它会说它是有效的,但它只会有一个“高亮”结果。

我是否在我的solr配置中丢失了某些东西,或者这是solr中的一些小错误?

注:

  • schema.xml中有 “unikeKey” 标签(真的不知道这是否会帮助)
  • 场 “description_autocomplete” 是从另一领域的 “copyField”。
  • 以上要求通过浏览器完成时给出完整的JSON,但是当解析(选择你的工具)时,我只能得到一个“高亮”结果
  • 我知道在RFC 4627(JSON规范)中,这似乎不是有效的如果需要,我可以提供我的Solr配置
  • Solr的版本JSON
  • 是4.3.0 1477023
+0

你的情况似乎缺少独特性,这就是为什么不显示id为突出显示部分,这将使您能够映射到响应?你是否填充了唯一的密钥并将其标记为必填项? – Jayendra

+0

的确是多数民众赞成在什么我想念,独特wasnt被填充。 谢谢jayendra。 – yan

+0

很酷......我可以将它添加为答案,并且您也接受它。 – Jayendra

回答

0

突出部分可以匹配具有唯一ID相应的响应。

你的情况似乎缺少了唯一性,这就是为什么id不显示在突出显示部分,这将使你能够映射到响应。

您是否填充了唯一的密钥并将其标记为必填?