Open GoogleCodeExporter opened 9 years ago
Проблема возникает когда результат работы
RussianLuceneMorphology пересылается в фильтр
EnglishLuceneMorphology. После прохождения
RussianLuceneMorphology 'пм' превращается в пустой
токен "", и когда этот пустой токен попадает
в EnglishLuceneMorphology, то он вызывает
ArrayIndexOutOfBoundsException. Воспроизвести это можно
так:
LuceneMorphology russianLuceneMorphology = new RussianLuceneMorphology();
LuceneMorphology englishLuceneMorphology = new EnglishLuceneMorphology();
MorphologyAnalyzer russianAnalyzer = new MorphologyAnalyzer(russianLuceneMorphology);
TokenStream stream = russianAnalyzer.reusableTokenStream("name", new FastStringReader("тест пм тест"));
MorphologyFilter englishFilter = new MorphologyFilter(stream, englishLuceneMorphology);
while (englishFilter.incrementToken()) {
System.out.println(englishFilter.toString());
}
Original comment by imo...@gmail.com
on 21 May 2012 at 1:23
А почему 'пм' превращается в пустой токен? А,
например, 'мп','мм','пмп' ... не превращаются в
пустой токен?
Original comment by maxkaza...@gmail.com
on 21 May 2012 at 1:34
Как исправить?? Тоже столкнулся с
проблемой, в базе раз 10 встречается " пм ".
Вылетает при перестроении индекса...
Original comment by Evgeny...@gmail.com
on 2 Oct 2012 at 5:10
Я просто отключил EnglishLuceneMorphology
Original comment by maxkaza...@gmail.com
on 2 Oct 2012 at 5:14
Да, это поможет, но нужно в скором времени и
EnglishLuceneMorphology использовать совместно...как
вариант, если поменять местами, чтобы
сначала отрабатывал EnglishLuceneMorphology и
результат пересылался в RussianLuceneMorphology будет
ли работать?
Original comment by Evgeny...@gmail.com
on 2 Oct 2012 at 6:17
Не, там будет другая кобинация. Надо
перекомпиливать плагин с учетом пустой
строки. Я не джавист и мне придется
потратить немало времени для этого.
Original comment by maxkaza...@gmail.com
on 2 Oct 2012 at 6:29
Я хоть и с джавой на Вы, но пришлось править.
Поправил метод incrementToken в классе MorphologyFilter.
Поставил проверку на пустую строку и
перекомпилировал этот класс. Все
заработало! Вдруг кому пригодиться,
прикрепляю файл morph-1.1-SNAPSHOT.jar иммено он
используется у меня в плагине для ElasticSearch
от Игоря Мотова.
Original comment by Evgeny...@gmail.com
on 2 Oct 2012 at 8:36
Attachments:
В плагине для Elasticsearch я поправил это так:
Original comment by imo...@gmail.com
on 2 Mar 2013 at 11:12
Attachments:
Original issue reported on code.google.com by
maxkaza...@gmail.com
on 21 May 2012 at 10:15