pylucene を使用してhttp://searchhub.org/2010/04/18/refresh-getting-started-with-payloads/から Java の Python バージョンを実装しようとしています。私のアナライザーは、DelimitedTokenFilter への init 呼び出しで lucene.InvalidArgsError を生成しています
クラスは以下のとおりです。どんな助けも大歓迎です。pylucene 3.6 ビルドの JAR ファイルでコンパイルされた Java バージョンは正常に動作します。
import lucene
class PayloadAnalyzer(lucene.PythonAnalyzer):
encoder = None
def __init__(self, encoder):
lucene.PythonAnalyzer.__init__(self)
self.encoder = encoder
def tokenStream(self, fieldName, reader):
result = lucene.WhitespaceTokenizer( lucene.Version.LUCENE_CURRENT, reader )
result = lucene.LowerCaseFilter( lucene.Version.LUCENE_CURRENT, result )
result = lucene.DelimitedPayloadTokenFilter( result, '|', self.encoder )
return result