Qual è il modo corretto di ottenere risultati da solrj utilizzando Solr Suggester?Solrj con Solr Suggester
Questa è la mia richiesta:
SolrQuery query = new SolrQuery();
query.setRequestHandler("/suggest");
query.setParam("suggest", "true");
query.setParam("suggest.build", "true");
query.setParam("suggest.dictionary", "mySuggester");
query.setParam("suggest.q", "So");
QueryResponse response = server.query(query);
Tuttavia ho trovato estremamente difficile ottenere la risposta. Il modo in cui ho ricevuto la risposta è con questo:
NamedList obj = (NamedList)((Map)response.getResponse().get("suggest")).get("mySuggester");
SimpleOrderedMap obj2 = (SimpleOrderedMap) obj.get("So");
List<SimpleOrderedMap> obj3 = (List<SimpleOrderedMap>) obj2.get("suggestions");
Questo sembra assumere un sacco sugli oggetti che sto ottenendo dalla risposta e sarà difficile anticipare gli errori.
C'è un modo migliore e più pulito di questo?
L'ho provato, non funziona. Non è un oggetto SpellCheckResponse. È un suggester https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=32604262 che penso sia diverso. – Ammar