2012-03-07 9 views
3

ここで解決策がなかったいくつかの驚くべき問題の1つ(またはその問題のどこでも)。原因:org.apache.solr.common.SolrException:見つかりませんでした

このセットアップは、私のローカルで完璧に動作します。しかし、ホストされたサーバーでは動作しません。

思考? ありがとうございます。 クマール

org.apache.solr.client.solrj.SolrServerException: Error executing query 
    at org.apache.solr.client.solrj.request.QueryRequest.process(QueryRequest.java:95) 
    at org.apache.solr.client.solrj.SolrServer.query(SolrServer.java:118) 
    at org.apache.jsp.jsp.t0Solr_jsp._jspService(t0Solr_jsp.java:103) 
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388) 
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
    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:293) 
    at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190) 
    at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291) 
    at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:776) 
    at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:705) 
    at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:898) 
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) 
    at java.lang.Thread.run(Thread.java:662) 
Caused by: org.apache.solr.common.SolrException: Not Found 

Not Found 

request: http://127.0.0.1:8080/solr/core0/select?q=primField: rockyBal&facet.field=dhomdhom&facet=true&facet.limit=1000&facet.mincount=2&rows=5000&wt=javabin&version=2 
    at org.apache.solr.client.solrj.impl.CommonsHttpSolrServer.request(CommonsHttpSolrServer.java:430) 
    at org.apache.solr.client.solrj.impl.CommonsHttpSolrServer.request(CommonsHttpSolrServer.java:244) 
    at org.apache.solr.client.solrj.request.QueryRequest.process(QueryRequest.java:89) 
    ... 23 more 
+2

Solrが実行されているTomcatと同じTomcatからSolrを使用してSolrに問い合わせていますか?もちろん、ポートは正しいですか? stacktrace httpクライアント側のエラーがもう1つありませんか? – javanna

+0

お返事ありがとうございます。はい、同じサーバーインスタンスとはい8080が正しいです。 – user1253801

+0

他に誤りはありません。上記のスタックはクライアント側からのものです。 – user1253801

答えて

0

例外がここに上げている(CommonsHttpSolrServer.java:430)

int statusCode = _httpClient.executeMethod(method); 
    if (statusCode != HttpStatus.SC_OK) { 
    StringBuilder msg = new StringBuilder(); 
    msg.append(method.getStatusLine().getReasonPhrase()); 
    msg.append("\n\n"); 
    msg.append(method.getStatusText()); 
    msg.append("\n\n"); 
    msg.append("request: "+method.getURI()); 
    throw new SolrException(statusCode, java.net.URLDecoder.decode(msg.toString(), "UTF-8")); 
    } 

だから、基本的には404エラーコードを取得しています。そのマシンでシェルを開き、

>カール「...スタックトレースで報告されたURLを...」と入力してみ

は、私はあなたが同じエラーを取得しますね。おそらく、これはサーバーのビングポートと関係があります。

おそらく、Tomcatは別のバインディングポートで始まるでしょう。 127.0.0.1に

  • バインドTomcatにしてみたり

または

  • 変更のIPアドレス/ホスト名でCommonsHttpSolrServerを初期化することによって、あなたのコードを(ちょうどテスト用)0.0.0.0 tomcat
関連する問題