Spring-data-solr数据导入处理程序调用

时间:2013-12-19 12:29:03

标签: java solr spring-data spring-data-solr

我正在使用spring-data-solr并在solr中拥有data import handler(DIH)。如何通过存储库或SolrTemplate或其他方式调用DIH?

1 个答案:

答案 0 :(得分:3)

我建议使用SolrCallback自定义存储库来执行所需的请求。

    @Override
    public SolrResponse dataImport(final String command) {

      return solrTemplate.execute(new SolrCallback<SolrResponse>() {

        @Override
        public SolrResponse doInSolr(SolrServer solrServer) throws SolrServerException, IOException {
          return new SolrRequest(METHOD.GET, "/dataimport?command=" + command) {

            //..skipped some methods to shorten

            @Override
            public SolrResponse process(SolrServer server) throws SolrServerException, IOException {
              SolrResponseBase response = new SolrResponseBase();
              response.setResponse(server.request(this));
              return response;
            }

          }.process(solrServer);

        }
      });
    }