我的本地计算机上的d:/tmp/docs
位置有一些doc文件,我想使用Apache Solr和Tika对它们进行索引。以下是我的data-config.xml
文件。
<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>
当我尝试将这些文件导入solr时,我得到以下异常:
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 :(得分:0)
检查数据源baseDir的URL
尝试从
改变BASEDIR =&#34; d:/温度/文档&#34;
到
BASEDIR =&#34; d:/温度/文档/&#34;
并更改*.*
之类的文件名,以索引该文件夹中的所有文档
答案 1 :(得分:0)
已解决......
我的data-config.xml中有多个dataSource标记,其中一个是<dataSource type="URLDataSource" />
导致问题..所以我删除了所有的dataSources并只保留<dataSource type="BinFileDataSource" />
它有效......:)