- HttpComponents - HttpComponents Overview -- http://hc.apache.org/ どういう風に便利なのかというと、外部WebAPIを叩くコードをテストする時、StubとなるWebサーバをわりかし簡単にでっち上げることが出来る。 WebサーバだからといってServletコンテナか、というわけではなく、もうちょい原始的でソケット入出力を薄くラップしてる。 逆に言えば、WebAPIのstubを用意したいが為にわざわざServlet組んだりServletコンテナ動かす為にあれやこれや調整する必要がない。 UnitTest中に使うので頻繁にup-downを繰り返すが、ポートの再利用を有効にする&graceful-shutdownを作り込んでおけばOK。 バイナリアーカイブDLすると付いてくるexampleの、BlockingモードのServerサンプルを適当に弄れば、あとは別のProjectとかでも使い回し出来る。 TomcatやらJettyやらWinstoneやらを上手くJUnitテストケース実行中に何度もup-downさせたりstub用のServletコンテナをどうやってdeployするかなどを調べて調整して検証して実装して流れに乗せるよりかは、大分手間が減ると思われる。 ---- まぁそもそもプロジェクト専用のWebアプリ領域とかが組織内にちゃんと用意されてれば、その上にStub用のアプリをdeployしておけるのだけれど、そこまで大仰なアプリじゃなかったり、そういう環境を用意する予算・時間・人的リソースが無い場合はこれでお茶を濁す手も有りなのではないかと。