すこしづつ進んでる。

少しづつ進んでるかな...。OpenSearch Agreegator もつくっとかないと面白くないからその辺も扱えるように取り掛かり中。ほんとは、1月ぐらいで、アップロードできればいいんだけど、まったくそうはいかないなぁ。すこしづつだな。

その辺を扱う為に、直接ソケットをひらいちゃうか、HttpClient を使うか迷ったけど、今後、認証を必要になるかもしれないと考えて、 HttpClient を利用するほうが良い気がしたので、そっちにする。

必要なのは、簡単にGETができればとりあえずは良いので、比較的簡単だった。いくつか、Webサイトで調べてそれを真似してみた。

HttpClient client = new HttpClient();
client.setTimeout(30 * 1000); // 30 secでタイムアウトする。
GetMethod getMethod = new GetMethod("http://localhost:8080/hoge");
client.executeMethod(getMethod);
byte[] responseBody = getMethod.getResponseBody();

こんな風にすれば良いみたい。セッションとか、その他ある場合は、色々たいへんそうだけと、簡単なリクエストならお手軽だなぁと思う。

  • 追記: HttpClientは、setTimeout 以外にも、setHttpConnectionFactoryTimeout や setConnectionTimeout というので設定が可能みたい。setTimeout は、 SO_TIMEOUT の設定だけど、他のは、接続までの時間などが設定できる。この辺もちゃんと設定した方が良いんじゃないかという気がしてきた。
  • 追記その2: うげ、setConnectionTimeout は、Deprecatedじゃん。つか、それ以外も....。みな、Deprecatedになるのね。(今、見てたのが2.0.2 APIだったもんで。)