Rufen Sie Solr asynchron in Play Framework auf

Ich habe eine Play 2.1 Scala-Anwendung erstellt. Ich bin mir nicht sicher, wie ich Solr am besten aus einer Play-Anwendung heraus aufrufen kann:

Es gibt kein Solr-Modul für Play 2.AFAIK alle Solr-APIs wie SolrJ sind blockiert.Ich könnte einen SolrJ-Anruf in einenFuture, aber dies wird auch einen Thread blockieren, richtig?

Soll ich das benutzen?play.api.libs.ws.WS Bibliothek zum Aufrufen von Solr und Verwenden der JSON-Unterstützung von Plays zum Extrahieren des Ergebnisses (wie im folgenden Beispiel) oder gibt es einen einfacheren / schnelleren Weg?

val solrQuery: Future[play.api.libs.ws.Response] = WS.url("http://localhost:8983/solr/collection1/select?q=id%3A123&wt=json").get()

Antworten auf die Frage(3)

Ihre Antwort auf die Frage