Вызвано: org.apache.solr.common.SolrException: не найдено - PullRequest
3 голосов
/ 07 марта 2012

Одна из удивительно немногих проблем, которая не имела решения здесь (или где-либо еще в этом отношении).

Эта установка прекрасно работает на моем локальном компьютере.Но не работает на размещенном сервере.

Мысли?Заранее спасибо.Кумар

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

1 Ответ

0 голосов
/ 07 августа 2013

Исключение возникает здесь (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. Попробуйте открыть оболочку на этом компьютере и наберите

> curl "... URL, указанный в трассировке стека ..."

Полагаю, вы получите ту же ошибку. Вероятно, это как-то связано с бинг-портом сервера ...

Вероятно, Tomcat запускается с другим портом привязки. Попробуйте

  • привязать кота к 127.0.0.1 или 0.0.0.0 (только для тестирования)

или

  • измените свой код, инициализируя CommonsHttpSolrServer с IP-адресом / именем хоста tomcat
...