在远程 glassfish 上解析(使用 Tika)

发布于 2025-01-07 22:26:21 字数 872 浏览 1 评论 0原文

我正在使用 Tika 解析器将我的文件索引到 Solr 中。我创建了自己的解析器(它扩展了 XMLParser)。它使用我自己的模仿类型。 我创建了一个 jar 文件,其内部如下所示:

src
|-main
    |-some_packages
        |-MyParser.java
    |resources
        |-META-INF
            |-services
                |-org.apache.tika.parser.Parser (which contains a line:some_packages.MyParser.java)
        |_org
            |-apache
                |-tika
                    |-mime
                        |-custom-mimetypes.xml 

在 custom-mimetypes 中,我放置了新 mimetype 的定义,因为我的 xml 文件有一些特殊标签。

现在问题出在哪里:我一直在本地计算机上安装的 glassfish 上使用 Solr 测试解析和索引。效果很好。然后我想将它安装在某个远程服务器上。安装了相同版本的 glassfish (3.1.1)。我复制粘贴了 Solr 应用程序,它是包含所有库的主目录(包括 tika jar 和带有我的自定义解析器的 jar)。不幸的是它不起作用。将文件发布到 Solr 后,我可以在内容类型字段中看到它检测到我的自定义 MIME 类型。但是没有任何字段应该存在,就像 MyParser 类从未运行过一样。我得到的唯一字段是来自都柏林核心的字段。我检查(通过简单地添加一些打印行)Tika 仅使用 XMLParser。 有人遇到过类似的问题吗?这要怎么处理呢?

I'm using Tika parser to index my files into Solr. I created my own parser (which extends XMLParser). It uses my own mimetype.
I created a jar file which inside looks like this:

src
|-main
    |-some_packages
        |-MyParser.java
    |resources
        |-META-INF
            |-services
                |-org.apache.tika.parser.Parser (which contains a line:some_packages.MyParser.java)
        |_org
            |-apache
                |-tika
                    |-mime
                        |-custom-mimetypes.xml 

In custom-mimetypes I put the definition of new mimetype becouse my xml files have some special tags.

Now where is the problem: I've been testing parsing and indexing with Solr on glassfish installed on my local machine. It worked just fine. Then I wanted to install it on some remote server. There is the same version of glassfish installed (3.1.1). I copied-pasted Solr application, it's home directory with all libraries (including tika jars and the jar with my custom parser). Unfortunately it doesn't work. After posting files to Solr I can see in content-type field that it detected my custom mime type. But there are no fields that suppose to be there like if MyParser class was never runned. The only fields I get are the ones from Dublin Core. I checked (by simply adding some printlines) that Tika is only using XMLParser.
Have anyone had similar problem? How to handle this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

指尖凝香 2025-01-14 22:26:21

问题是我使用 Java 7 来编译我的解析器,但 Apache Tika 是用 Java 5 编译的......

Problem was that I was using Java 7 to compile my parser but Apache Tika was compiled with Java 5...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文