[WLS] RESTful Web Services in WebLogic

WebLogic Server 11gR1 PS3 (10.3.4) では、JerseyというJAX-RSのリファレンス実装を搭載することで、JavaのRESTfulサービス(JAX-RS)をサポートしています。WebLogic Serverでサポートされ、Java EE 6の仕様に含まれて初めて、RESTfulサービスのことを気にするようになりました。SOA/SOAPのバックグラウンドをもっていた筆者にとっては、RESTは「誇大広告(hype)」が過ぎており、さらにSOAPはその当時必要なものをすべて提供してくれていたので、なぜ変更の必要があるのか、と考えていました。それにもかかわらず、JAX-RSおよびRESTを学習しはじめて、これが非常におもしろいことがわかったのです!プログラミングモデルが楽しいというだけでなく、JAX-RSとRESTを使うタイミングと方法に関してあがってくるアーキテクチャ上の質問も啓発してくれます。

議論に参加するために、RESTはリソースを公開するために使うのに対し、SOAPは業務ロジックを公開するために使うべきという原則を筆者は守っていますが、みなさんは好きなだけ行を曖昧にするという選択も可能です。例えば、’PUT’の本当の意味はどういうものなのか、とか。'PUT'はMessage Queueでは有効なアクションなのでしょうか。もしそうなら、Message QueueをRESTで公開できなければならないのですが、お客様のリソースを'GET'することとは全く違いますよね。

Enterprise Architectは、SOAPもRESTfulサービスも適材適所で使うべきです。RESTはSOAPを置き換えるものではなく、補完するものです。

YouTubeのWebLogicチャネルでRESTfulサービスとSOAP Webサービスを議論しているWebcastの抜粋をUpしていますので、ご参考までに。



[参考URL]
YouTubeのWebLogicチャネル(OracleWebLogic)
http://www.youtube.com/user/OracleWebLogic


原文はこちら。
http://blogs.oracle.com/jeffwest/entry/restful_web_services_in_weblogic

0 件のコメント:

コメントを投稿