#java #scala #solr #playframework #solrj
#ява #скала #солр #playframework #solrj #java
Вопрос:
Я хочу получить свою Схему в формате XML с помощью класса SchemaRequest SolrJ. Согласно документации, он должен быть с параметром запроса wt= xml, но не имеет значения, как я его отправляю, он всегда возвращает ответ в формате json. Можно ли получить схему с помощью SolrJ в формате xml, как описано в документах?
это то, что я делаю прямо сейчас:
val client = new HttpSolrClient.Builder().withBaseSolrUrl(s"http://$host:$port/solr$collectionPath").build
val solrParams = new ModifiableSolrParams(params)
val getSchemaRequest = new SchemaRequest(solrParams)
getSchemaRequest.process(client).getResponse
Последняя строка — это та, которая дает мне правильную схему, но в формате json. Заранее благодарю.
Я попытался добавить, чтобы добавить XMLResponseParser, как было предложено в комментариях.
val getSchemaRequest = new SchemaRequest(query)
getSchemaRequest.setResponseParser(new XMLResponseParser)
но теперь я получаю это исключение:
class org.apache.solr.common.util.SimpleOrderedMap cannot be cast to class java.util.Map (org.apache.solr.common.util.SimpleOrderedMap is in unnamed module of loader play.runsupport.NamedURLClassLoader @150d015c; java.util.Map is in module java.base of loader 'bootstrap')
Комментарии:
1. не уверен насчет solrj api … но можете ли вы попробовать преобразование json в xml
2. попробуйте установить solr.setParser(новый XMLResponseParser());
3. lucene. apache.org/solr/7_4_0/solr-solrj/org/apache/solr/client/…