2016-04-22 22 views
1

ローカルマシン上のd:/tmp/docsの場所にいくつかのdocファイルがあり、Apache SolrとTikaを使用してそれらのインデックスを作成したいと思います。以下は私のdata-config.xmlファイルです。私はSolrのにそれらのファイルをインポートしようとすると、私は例外次取得apache solrとtikaを使用したテキストファイルのインデックス作成

<dataSource type="BinFileDataSource" /> 
    <document> 
     <entity name="file_Import" dataSource="null" rootEntity="false" 
     processor="FileListEntityProcessor" 
     baseDir="D:/temp/docs" fileName=".*\.(doc)|(pdf)|(docx)" 
     onError="skip" 
     recursive="true"> 
      <field column="fileAbsolutePath" name="id" /> 
      <field column="fileSize" name="size" /> 
      <field column="fileLastModified" name="lastModified" /> 

      <entity 
       name="documentImport" 
       processor="TikaEntityProcessor" 
       url="${files.fileAbsolutePath}" 
       format="text"> 
       <field column="file" name="fileName"/> 
       <field column="Author" name="author" meta="true"/> 
       <field column="title" name="title" meta="true"/> 
       <field column="text" name="text"/> 

      </entity> 
    </entity> 
    </document> 

Caused by: java.net.MalformedURLException: no protocol: null 
    at java.net.URL.<init>(Unknown Source) 
    at java.net.URL.<init>(Unknown Source) 
    at java.net.URL.<init>(Unknown Source) 
    at org.apache.solr.handler.dataimport.URLDataSource.getData(URLDataSource.java:90) 
... 11 more 

私はSORLがd:/temp/docsフォルダを見つけることができないことを考え出しました。

解決方法がわからない。どんな助けもありがたい。

答えて

0

チェックデータソースのURL BASEDIR

BASEDIRから変更してみてください= "D:/ TEMP/docsに"

BASEDIR = "D:/ TEMP /ドキュメント/ "

などのファイル名を変更し、*.*のようにそのフォルダ内のすべてのドキュメントにインデックスを付けます。

+0

それは...同じ問題が続く –

0
解決

...

私はどちらのうち、自分のデータ-config.xmlで複数のデータソースのタグを持っていたが<dataSource type="URLDataSource" /> は..問題を引き起こしていたので、私はすべてのデータソースを削除し、のみ<dataSource type="BinFileDataSource" />

を保持しましたそれは働いた... :)

関連する問題