синтаксический анализ (с использованием Tika) на удаленной стеклянной рыбе - PullRequest
1 голос
/ 23 февраля 2012

Я использую парсер Tika для индексации моих файлов в Solr. Я создал свой собственный парсер (который расширяет XMLParser). Он использует мой собственный mimetype. Я создал 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-файлах есть некоторые специальные теги.

Теперь в чем проблема: я тестировал синтаксический анализ и индексацию с помощью Solr на glassfish, установленном на моей локальной машине. Работало просто отлично. Затем я хотел установить его на каком-нибудь удаленном сервере. Установлена ​​та же версия Glassfish (3.1.1). Я скопировал и вставил приложение Solr, это домашний каталог со всеми библиотеками (включая tika jar и jar с моим пользовательским анализатором). К сожалению, это не работает. После публикации файлов в Solr я вижу в поле типа контента, что он обнаружил мой собственный тип пантомимы. Но нет полей, которые должны быть там, как если бы класс MyParser никогда не запускался. Единственные поля, которые я получаю, это поля из Dublin Core. Я проверил (просто добавив несколько строк печати), что Тика использует только XMLParser. У кого-нибудь была подобная проблема? Как справиться с этим?

1 Ответ

0 голосов
/ 29 марта 2012

Проблема заключалась в том, что я использовал Java 7 для компиляции моего парсера, но Apache Tika был скомпилирован с Java 5 ...

...