Indizieren aller Dokumente im Ordner doc in solr FileListEntityProcessor

http://wiki.apache.org/solr/ExtractingRequestHandler enthält nicht viele Informationen zum Konfigurieren dieses Handlers in einer Webanwendung, die über einen eigenen Kontext verfügt und solr als Serverfeatures als eingebettetes solr verwenden möchte. Können Sie uns bitte einige Informationen darüber geben, wie Sie die Dokumente auf solr hochladen und nach Inhalten aus diesen Dokumenten suchen können? Ich habe DIH wie in solrConf.xml konfiguriert

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

und tika-data-config.xml sieht aus wie

<code><dataConfig>
    <dataSource type="BinFileDataSource" name="bin" />
    <document>
      <entity name="sd"
        processor="FileListEntityProcessor"
        newerThan="'NOW-30DAYS'"
        filenName=".*\.(DOC)|(PDF)|(pdf)|(doc)|(docx)|(ppt)"
        baseDir="G:/workspace/FacetedSearch/src/solr/docs"
        recursive="true"
        rootEntity="false"
          >
            <field column="fileAbsolutePath" name="path" />
            <field column="fileSize" name="size" />
            <field column="fileLastModified" name="lastmodified" />
            <field column="fileAbsolutePath" name="text" />  
            <!-- <field column="fileName" name="text" /> -->
            <field column="baseDir" name="text" />

        <!-- <entity name="tika-test" processor="TikaEntityProcessor" 
          url="${sd.fileAbsolutePath}" format="text" dataSource="bin">
         -->
         <entity name="tika-test" 
                 dataSource="bin"  
                 processor="TikaEntityProcessor" 
                 url="G:/workspace/FacetedSearch/src/solr/docs" 
                 format="text" >
          <field column="Author" name="author" meta="true"/>
          <field column="Content-Type" name="title" meta="true"/>
          <field column="title" name="title" meta="true"/>
          <field column="text" name="text"/>

        </entity>


    </entity>
  </document>

</dataConfig>
</code>

Das Verzeichnis G: / workspace / FacetedSearch / src / solr / docs enthält viele PDF- und HTML-Dateien. Einige davon sind tutorial.pdf ...... index.pdf

Nach dieser Konfiguration, wenn ich SolrQuery-Objekt als

<code>    CoreContainer.Initializer initializer = new CoreContainer.Initializer();
    CoreContainer coreContainer = initializer.initialize();
    EmbeddedSolrServer solrServer = new EmbeddedSolrServer(coreContainer, "");  
    SolrQuery solrQuery = new SolrQuery();
    solrQuery.addField("literal.id");   
    solrQuery.setQuery("index.pdf");
    QueryResponse queryResponse = null ;
    try{
    queryResponse = (QueryResponse) solrServer.query(solrQuery);
    }catch(Exception e){
    System.out.println("exception occured while processing the solrQuery "+ 
    e.getMessage() +"stack trace " + e + solrQuery.toString()); 
    }
    out.println(queryResponse);
</code>

Ich erhalte kein Ergebnis (hier ist queryResponse null). Ich habe die schema.xml von SolR 3.5 verteilt und einige Felder als hinzugefügt

<code><field name="path" type="text_general" indexed="true" stored="true" />   
<field name="lastmodified" type="date" indexed="true" stored="true" />
</code>

Ich habe eine Frage, wie werden die Dokumente in "G: / workspace / FacetedSearch / src / solr / docs" von solr beim Start von solr indiziert? Wenn diese indiziert sind, wie kann ich das Ergebnis erhalten?

Kann jemand mich bitte wissen lassen, wo ich falsch mache?

Bitte lassen Sie mich wissen, wenn Sie weitere Informationen benötigen, um meine Antworten zu erhalten.

Antworten auf die Frage(0)

Ihre Antwort auf die Frage