Solr:如何使用<dataconfig>导入json文件?

时间:2016-01-14 19:37:14

标签: json solr

我试图通过EmbeddedSolr导入一堆json文件。 solrconfig.xml中导入的配置为:

 <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
    <lst name="defaults">
      <str name="config">src/main/resources/solr-data/data-config.xml</str>
    </lst>
  </requestHandler>

data-config.xml是:

<dataConfig>
    <dataSource type="FileDataSource" />
    <document>
        <entity name="f" processor="FileListEntityProcessor"
                fileName=".*json"
                rootEntity="false"
                dataSource="null"
                recursive="true"
                baseDir="src/main/resources/solr-data/"/>
    </document>
</dataConfig>

这是我以编程方式生成索引的方法:

System.setProperty("solr.solr.home", "multicore");
        File home = new File( "src/main/resources/solr" );
        File f = new File( home, "solr.xml" );
        CoreContainer  container = CoreContainer.createAndLoad( "src/main/resources/solr", f );

        EmbeddedSolrServer server = new EmbeddedSolrServer(container, "my_core" );

        SolrQuery importQuery = new SolrQuery();
        importQuery.setRequestHandler("/dataimport");
        importQuery.setParam("command", "full-import");
        importQuery.setParam("entity", "f");
        server.query(importQuery).getResponse();

        SolrQuery qry = new SolrQuery();
        qry.setRequestHandler("solr/my_core");
        qry.setParam("q", "*:*");
        System.out.println (server.query(qry).getResults().toString());

一旦我通过URL触发导入,我可以看到导入已被触发,但文件没有被加载,因此索引仍为空。

如何导入该文件?

0 个答案:

没有答案