我在使用Datastax Enterprise和DSE Search(Cassandra上的SolR)編寫應用程序。Datastax DSE搜索:如何使用java發佈solrconfig.xml和schema.xml?
我的問題是我需要生成schema.xml並使用Java動態發送到SolR solrconfig.xml和schema.xml。不使用捲曲。
我試過使用Commons HttpComponents,但插入到cassandra表中的solrconfig.xml文件不正確。在XML文件的開始之前插入Http相關數據,如下所示:
��:
solr_adminsolr_resourcesresource_value��--9NDJNu2AW4jtIyX6ggQAgEqI3FXp3JpDZ6
Content-Disposition: form-data; name="solrconfig.xml"; filename="solrconfig.xml"
Content-Type: application/xml; charset=ISO-8859-1
Content-Transfer-Encoding: binary
<config>
<!-- In all configuration below, a prefix of "solr." for class names
is an alias that causes solr to search appropriate packages,
including org.apache.solr.(search|update|request|core|analysis)
[Continued...]
當然,當SolR嘗試讀取此配置時,它會失敗。
有人知道如何正確地將這兩個文件以編程方式從java發送到SolR嗎?
在此先感謝您的答案。
使用HttpClient不起作用(從cassandra blob中讀取)。 使用SolrJ創建核心不起作用(抱怨丟失的文件)。 ContentStream請求失敗,出現500錯誤 HttpSolrServer server = new HttpSolrServer(solrUrl); ContentStreamUpdateRequest req = new ContentStreamUpdateRequest(「/ resources /」+ solrKeyspace +「。」+ datasetName +「/」); req.addContentStream(new ContentStreamBase.FileStream(new File(「solrconfig.xml」))); server.request(req); server.commit(); 返回的非正常狀態:500,消息:內部服務器錯誤 – fesnault