Я использую парсер 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.
У кого-нибудь была подобная проблема? Как справиться с этим?