我正在尝试编写一个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在这方面没有帮助。
答案 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