将GrobidExtractor.properties传递给Java中的Tika?

时间:2016-05-11 15:09:46

标签: java apache-tika

我正在尝试编写一个Java应用程序,它使用JournalParser从期刊文章中提取作者,引用等。 GrobidJournalParser的文档提供了命令行应用程序和TikaServer的说明。我需要指出Grobid在localhost以外的地方运行:8080。我有一个GrobidExtractor.properties文件,在我的类路径中包含正确的URL,但它似乎没有找到 - 我收到一个错误,因为它试图访问localhost:8080上的Grobid。

   WARNING: Interceptor for {http://localhost:8080/processHeaderDocument}WebClient has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: No message body writer has been found for class org.apache.cxf.jaxrs.ext.multipart.MultipartBody, ContentType: multipart/form-data
    at org.apache.cxf.jaxrs.client.WebClient$BodyWriter.doWriteBody(WebClient.java:1220)

还有其他方法告诉Tika或JournalParser在哪里可以找到Grobid吗? Javadocs在这方面没有帮助。

1 个答案:

答案 0 :(得分:1)

作为explained in the documentation on using GROBID with Tika,如果要将Tika配置为使用备用GROBID服务器,则使用名为org/apache/tika/parser/journal/GrobidExtractor.properties的文件

你只是打电话给你GrobidExtractor.properties,这就是为什么它没有被接听。完整路径是必需的

假设您正在使用Linux,使用Tika应用程序以及当前目录中的GROBID属性,您需要使用以下内容修复它:

mkdir -p org/apache/tika/parser/journal
mv GrobidExtractor.properties org/apache/tika/parser/journal/
java -classpath .:tika-app-1.13.jar org.apache.tika.cli.TikaCLI --metadata journal.pdf