基于Tomcat的solr搜索,NoHttpResponseException,所有jars都添加了



我用jsp调用搜索算法来搜索Solr并得到结果。

我的jsp页面是这样的:

<table class="table table-hover">
        <tr>
            <td>Your Search Results:</td>
            <td>
                <%
                    String queryKey = request.getParameter("jobSearch");
                    ArrayList<String> resultSet = SearchSolr.queryAll(queryKey);
                    out.println(resultSet);
                %>
            </td>
        </tr>
</table>

该页面继续在以下行上给我错误:

ArrayList<String> resultSet = SearchSolr.queryAll(queryKey);

说:

java.lang.ClassNotFoundException: org.apache.http.NoHttpResponseException

异常如下所示:

    type Exception report
message An exception occurred processing JSP page /Result.jsp at line 40
description The server encountered an internal error that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: An exception occurred processing JSP page /Result.jsp at line 40
37:                 <td>
38:                     <%
39:                         String queryKey = request.getParameter("jobSearch");
40:                         ArrayList<String> resultSet = SearchSolr.queryAll(queryKey);
41:                         out.println(resultSet);
42:                     %>
43:                 </td>

Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:455)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
root cause
javax.servlet.ServletException: java.lang.NoClassDefFoundError: org/apache/http/NoHttpResponseException
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:912)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:841)
    org.apache.jsp.Result_jsp._jspService(Result_jsp.java:129)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
root cause
java.lang.NoClassDefFoundError: org/apache/http/NoHttpResponseException
    com.demoApp.solrJ.SearchSolr.queryAll(SearchSolr.java:16)
    org.apache.jsp.Result_jsp._jspService(Result_jsp.java:103)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
root cause
java.lang.ClassNotFoundException: org.apache.http.NoHttpResponseException
    java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    java.security.AccessController.doPrivileged(Native Method)
    java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    java.lang.ClassLoader.loadClass(ClassLoader.java:423)
    java.lang.ClassLoader.loadClass(ClassLoader.java:356)
    com.demoApp.solrJ.SearchSolr.queryAll(SearchSolr.java:16)
    org.apache.jsp.Result_jsp._jspService(Result_jsp.java:103)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

我已经导入了所有必要的jar,包括httpclient,httpcore,httpmime,httpclient-cache等。

我导入的罐子如下:http://imageshack.com/a/img401/329/3we1.jpg

它必须将项目中的所有jar导入tomcat的lib文件夹。解决!

最新更新