Java 如何将Servlet与apachesolr服务结合使用

Java 如何将Servlet与apachesolr服务结合使用,java,tomcat,servlets,solr,Java,Tomcat,Servlets,Solr,我正在为我的web应用程序使用JavaEE技术。我使用ApacheSolr作为我的搜索引擎。好的,在我成功配置Solr之后,Solr将作为Restful服务运行 因此,在我的servlet下,我尝试将此服务作为我以前使用的另一个控制台应用程序调用。下面是用于从url获取json数据的示例代码: /** Get Data Fom URL Using GET Method */ public static String getResponseFromGetRequest(String ur

我正在为我的web应用程序使用JavaEE技术。我使用ApacheSolr作为我的搜索引擎。好的,在我成功配置Solr之后,Solr将作为Restful服务运行

因此,在我的servlet下,我尝试将此服务作为我以前使用的另一个控制台应用程序调用。下面是用于从url获取json数据的示例代码:

 /** Get Data Fom URL Using GET Method */
    public static String getResponseFromGetRequest(String url) {
        HttpClient httpClient = new DefaultHttpClient();
        HttpGet httpGet = new HttpGet(url);

        /** after prepare for data. prepare for sending */
        try {
            /**
             * HttpResponse is an interface just like HttpGet
             * therefore we can't initialize them
             */
            HttpResponse httpResponse = httpClient.execute(httpGet);
            return parseHttpResponse(httpResponse);

        } catch (ClientProtocolException ex) {
            ex.printStackTrace();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
        return null;
    }

但是包org.apache.http.impl.client.DefaultHttpClient不可用(至少在tomcat服务器下)。所以,我想这里可能有一些问题。我们不能在servlet中调用另一个服务,对吗?如果我的猜测是真的,那么我如何解决这个问题呢?

一段关于使用java中可用的API与solr交互的简短代码(您不需要知道或关心servlet、HttpClient,什么都不需要)

如果您没有maven:

http://mvnrepository.com/artifact/org.apache.solr/solr-solrj/4.10.3

单击“下载(JAR)”。

我认为您希望在java中使用Solr的API,在这种情况下,您不需要如此直接地调用Solr。另外,DefaultHttpClient不可用的事实表明,您的部署程序集遗漏了包含DefaultHttpClient类的jar。试着帮点忙。所以,我们只需启动solr服务器。将solr库包含到项目中。我们可以像上面那样运行代码,对吗?谢谢:)那些API在SolrJ库中?谢谢:)
    <dependency>
        <groupId>org.apache.solr</groupId>
        <artifactId>solr-solrj</artifactId>
        <version>4.5.1</version>
    </dependency>
http://mvnrepository.com/artifact/org.apache.solr/solr-solrj/4.10.3