Zurück solr-response im json-format
Ich versuche zurück zu kehren solr-response im JSON-format. Jedoch bin ich nicht in der Lage, um die JSON-Antwort. Unten ist mein solr config:'
<queryResponseWriter name="json" default="true" class="org.apache.solr.request.JSONResponseWriter">
<str name="content-type">application/json</str>
</queryResponseWriter>
Unten ist mein java code:
HttpSolrServer server = new HttpSolrServer(serverUrl);
SolrQuery query = new SolrQuery();
query.setQuery(query);
query.set("indent","true");
query.set("wt","json");
QueryResponse response = server.query(query);
System.out.println(response.getResults().get(index));
Jedoch Ausgabe-Stücks in folgendem format.
{numFound=1,start=0,docs=[SolrDocument{_uniqueKey=[“abc@gmail.com”,”abc”], calculation_policy=text_value, username=abc, email=abc@gmail.com, display_order=10, last_login=Mon Jan 26 11:27:35 PST 2015, created=Mon Jan 26 11:27:35 PST 2015}]}
Jedoch bekomme ich JSON-Antwort nach Ausführung der folgenden Zeile:
System.out.println(new Gson().toJson(queryResponse.getResults().get(index)));
Kann mir bitte jemand sagen, was Schritt bin ich?
InformationsquelleAutor user1247412 | 2015-02-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vielleicht dieser link kann klären:
zitiert format json aus Solrj
Sonst können Sie vielleicht erreichen, was Sie benötigen, nur über eine Http-Anforderung wie ich Sie kenne, die hat ja json-support.
InformationsquelleAutor David Kaplan
Mit neueren Versionen von Solr (ab 4.7.0) ist es möglich die Rückkehr der Anfragebeantwortung direkt im json-format. Diese kann getan werden, mit der
NoOpResponseParser
.InformationsquelleAutor laberning
Standardmäßig Solrj verwendet wt=javabin&version=2 als Standard für das abrufen der Ergebnisse, wie beschrieben, in http://wiki.apache.org/solr/javabin
Jedoch zeigen die Antwort im json-entweder GSON oder Jackson(Objekt-Mapper).
InformationsquelleAutor Swaraj