2016-05-31 50 views
2

嗨,我在這裏使用Solr 4.7.2來索引文檔。使用ContentStreamUpdateRequest將doc/pdf/docx文件索引到solr中

使用solrj的ContentStreamUpdateRequest我想索引的文件在Solr的,但同時 我使用的UI

在動作類,同時發送ContentStreamUpdateRequest參數傳遞的對象發送一個文件路徑和唯一ID字段作爲輸入到solrServer對象 即

SolrServer solrServer = ..; 
solrServer.request(contentStreamUpdateRequest); 

我收到以下錯誤

Exception: 
    org.apache.solr.client.solrj.SolrServerException 

Exception message: 
    error reading streams 

異常跟蹤:

at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:382) 
at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:199) 
at com.adastra.candidate.search.solr.action.SolrUpdateAction.aaaExecute(SolrUpdateAction.java:49) 
at com.adastra.base.action.BaseAction.execute(BaseAction.java:181) 
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425) 
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228) 
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) 
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) 
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:859) 
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579) 
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1555) 
at java.lang.Thread.run(Unknown Source) 

可以請建議我固定它。

+1

你能發佈完整的錯誤信息嗎?看起來你正在給出錯誤的編碼或路徑不正確? – bsd

+0

您是否在談論文件路徑 – Veeresh123

+0

發佈完整的堆棧跟蹤。必須有更多 – bsd

回答

0

我認爲,在版本4.7.2流被默認禁用,您必須啓用它在文件solrconfig.xml中

變化

<requestParsers enableRemoteStreaming="false" 

<requestParsers enableRemoteStreaming="true" 

而且,看看文檔 http://wiki.apache.org/solr/SolrSecurity#Streaming_Consideration

讓我知道這是否解決了這個問題。啓用遠程流式傳輸時請注意安全。