Jboss7.1.1上でServlet3.0のasync-supportedとEJB 3.1を使ってみる

今回作成したソースはgithub上に置いてあります。下記参照。
https://github.com/bose999/servlet30-ejb31-jboss711-sample


ServletにてAsyncContextを生成
ServletにDIされたStateless Sessin Beanにて非同期処理を実行
EJBでのエラーやトランザクションタイムアウトを利用してエラーページ制御
という流れ。

15:13:16,118 INFO  [jp.techie.sample.servlet.SampleServlet] (http-localhost-127.0.0.1-8080-1) Line:57 Start Servlet Method
15:13:16,119 INFO  [jp.techie.sample.servlet.SampleServlet] (http-localhost-127.0.0.1-8080-1) Line:70 End Servlet Method:2ms.
15:13:16,127 INFO  [jp.techie.sample.action.ActionBeanImpl] (EJB default - 1) Line:74 Start Asynchronous EJB Method
15:13:16,135 INFO  [jp.techie.sample.action.ActionBeanImpl] (EJB default - 1) Line:97 End Asynchronous EJB Method:8ms.


EJB 3.1はインターフェイスすら必要なく、しかもwarの中に入れる事が可能。
もうJavaEEのイメージだけで敬遠する時代は終わっててEoDの手段の一つとして
EJB 3.1を考えていいのかなと思います。


面倒な事はDIコンテナに任せていた事から変わって
EJBコンテナに任せるように変わるだけな気もします。:-)