[Java] JSR 356, Java API for WebSocket

原文はこちら。
https://blogs.oracle.com/java/entry/jsr_356_java_api_for

Java ChampionのJohan Vosが寄稿した「JSR 356, Java API for WebSocket」がOTNのJavaページにUpされています。この記事では、WebSocketをアプリケーションに統合する方法を紹介しています。Java EE 7プラットフォームの構成要素であるJSR 356では、Java開発者がJavaサーバーサイド、クライアントサイド両方のアプリケーションにWebSocketを統合したい場合に利用可能なAPIを取り決めています。APIは非常に柔軟で自由に開発者がWebSocketベースのアプリケーションを作成でき、しかも基礎となるWebSocketの実装に依存しませんので、ベンダーロックインを避けることができます。また、ライブラリやアプリケーションサーバーの選択肢が増える、ということもあります。WebSocket実装を使うWebクライアントやネイティブクライアントであればJavaで構築したバックエンドシステムと簡単に通信することができます。

Java EE 7標準の一端として、全てのJava EE 7準拠アプリケーションサーバーはJSR 356に従うWebSocketプロトコルの実装を有することでしょう。Vosは以下のように説明しています。
「WebSocketクライアントとサーバーが接続を確立すると、両者は対称の関係になるため、クライアントAPIとサーバーAPIの違いは微少なものです。JSR 356はJavaクライアントAPIも定義していますが、これはJava EE 7で必要な完全なAPIのサブセットです。
WebSocketメッセージとしてJavaオブジェクトを送受信できるため、Java API for WebSocketは非常に強力です、
基本的に、異なる3種類のメッセージがあります。
  • テキストベースのメッセージ
  • バイナリメッセージ
  • WebSocket接続のためのPongメッセージ(訳注:pingに対する応答メッセージ)
インターフェース駆動のモデルを使う場合、各セッションは3種類のメッセージのそれぞれに対して多くとも1個のMessageHandlerを登録することができます。
アノテーション駆動モデルを使う場合、各種類のメッセージに対し、1個の@onMessageアノテーションを付けたメソッドが許可されています。アノテーションを付けられたメソッドにおいて特定のメッセージコンテキストに対して許可されているパラメータはメッセージの種類によって変わります。」
記事は以下のリンクからどうぞ。是非WebSocketをアプリケーションに統合する方法を知って頂ければと思います。
JSR 356, Java API for WebSocket (by Johan Vos)
http://www.oracle.com/technetwork/articles/java/jsr356-1937161.html

0 件のコメント:

コメントを投稿