0
我正在使用以下solrj代碼索引文檔。Solr錯誤使用ContentStreamUpdateRequest上傳文件
ContentStreamUpdateRequest req = new ContentStreamUpdateRequest("/update/extract");
ContentStreamBase.FileStream fs = new FileStream(new File(filename));
req.setWaitSearcher(false);
req.setMethod(METHOD.POST);
//req.addFile(new File(filename), null);
req.addContentStream(fs);
req.setParam("literal.id", filename);
req.setParam("resource.name", filename);
//req.setParam("uprefix", "attr_");
//req.setParam("fmap.content", "attr_content");
//req.setAction(AbstractUpdateRequest.ACTION.COMMIT, true, true);
NamedList<Object> result = this.mHttpSolrClient.request(req);
但是,我總是要求,它說
4767120 [qtp559670971-21] INFO org.apache.solr.update.processor.LogUpdateProcessor [ test] – [test] webapp=/solr path=/update/extract params={waitSearcher=false&resource.name=/tmp/RUNNING.txt&literal.id=/tmp/RUNNING.txt&wt=javabin&version=2} {} 0 6
4767121 [qtp559670971-21] ERROR org.apache.solr.core.SolrCore [ test] – org.apache.solr.common.SolrException: ERROR: [doc=/tmp/RUNNING.txt] Error adding field 'stream_size'='null' msg=For input string: "null"
我使用的是最新版本的Solr 5.1.0後右側獲得一個SolrException。有任何想法嗎?
你有沒有標註「stream_size」作爲您的配置要求的領域?因爲如果你做了,然後你沒有設置它,那可能是問題所在。 –
喬什愛德華茲在哪裏添加?當我創建核心/集合時,我只是做了'./bin/solr create -c test' – Swoorup
您可以在{您的集合文件夾} /conf/schema.xml下看到包含您的字段的配置。看看哪些字段是定義的。會有幾行看起來像這樣: 。根據錯誤,我猜測可能有一個名爲「stream_size」的設置爲required =「true」,但未被上面的代碼填充。 –