HttpClient4でPreemptive Auth

FessではSolrのコンテキストに対してBASIC認証をかけているのだけど、Solr4ではSolrJがHttpClient4がデフォルトになり、HttpClient3のときのようにフラグだけでPreemptive Authの設定できない感じだ。SolrJ自体がそれに対応していれば良いのだけど、そうではないっぽい。まぁ、SolrJはHttpClient4を利用しているのでHttpRequestInterceptorでBASIC認証の情報をaddHeaderしてあげれば良いみたい。SolrLibのところにコードはおいてあります。別にSolrJじゃなくても使える気はするけど。

codelibsのsolrlib

Fessに入っていたSolrサーバーにアクセスするためのコードを抜き出して、solrlibとしてまとめました。FessではアクセスするSolrサーバーたちを複数まとめて扱えるようにしたり、リトライできるようにしたり、生死監視したりとかしているのだけど、その辺の機能です。まぁ、Fessから抜き出すことでFessと同じようなことがFess以外のJavaプロジェクトでしやすくなるかと思います。まぁ、solrjのSolrServerのインスタンスをラップしている感じですが、Solrを真面目に使うなら必要そうな機能な気はします。そんな感じで、codelibsで作っていきます。