カスタム を作成したばかりCharTokenizerで、それを Solr サーバーで使用したいと考えています。
Solr3 では、create メソッドで my を拡張TokenizerFactoryして返すことができましたが、Solr4 には存在しません。CharTokenizerTokenizerFactory
TokenizerFactoryということで、に置き換える必要があることに気づきましたが、この場合、パラメータが一致しないため、TokenFilterFactory自分の custom を返すことができません。CharTokenizer
私はいくつかのドキュメントも検索していますが、そこには本当に役立つものはないようです。
では、どうすれば機能させることができますか?
例:
public class MyCustomTokenizer extends CharTokenizer {
  char anotherSpace = 24;
  public MyCustomTokenizer(Version matchVersion, Reader in) {
    super(matchVersion, in);
  }
  protected boolean isTokenChar(int c) {
    return !Character.isWhitespace(c) && isToken((char) c);
  }
  private boolean isToken(char c) {
    if (c == anotherSpace || c == ',') {
        return false;
    }
    return true;
  }
}
public class MyCustomTokenizerFactory extends TokenFilterFactory {
  public void init(Map<String, String> args) {
    super.init(args);
    assureMatchVersion();
  }
  @Override
  public TokenStream create(TokenStream input) {
      // sh*t happens here
    return new MyCustomTokenizer(luceneMatchVersion, input);
  }
}
前もって感謝します。