先の投稿 で analyze しない NoAnalyzer というアナライザを使う話を書いたが、 別の掲示板を見るとやはりそういう時は KeywordAnalyzer を使えという話が書いてあって、 実際、NoAnalyzer を使う前に KeyworkAnalyzer を使ってみたのだが、 うまく行かなかったので、わざわざあのようなクラスを作ったのである。
ただ、その後普通に KeywordAnalyzer を使ってみたら、 何の問題もなくうまく動作する。 つまり、次のように指定すればいい。
<bean id="simpleAnalyzer"
class="org.apache.lucene.analysis.KeywordAnalyzer"/>
<bean id="analyzer"
class="jp.co.crm.jirosearch.lucene.PerFieldAnalyzerWrapper">
<property name="defaultAnalyzer"><ref local="simpleAnalyzer"/></property>
<property name="analyzerMap">
<map>
<entry key="body"><ref local="cjkAnalyzer"/></entry>
<entry key="tag"><ref local="simpleAnalyzer"/></entry>
</map>
</property>
</bean>
では元のコードはどこがおかしかったのか、 というのが変更しすぎてよく分からない。