Oracle® Fusion Middleware Oracle WebLogic Server 12.1.3 RESTful Webサービスの開発と保護 12c (12.1.3) E57546-02 |
|
前 |
次 |
この章では、WebLogic Server 12.1.3でサーバー送信イベントを使用する方法について説明します。WebLogic Serverでのサーバー送信イベントは、Jersey 2.5.1ライブラリの統合によってサポートされます。Jersey 2.5.1ライブラリにより、JSR-399 (JAX-RS 2.0: Java API for RESTful Web Services)の参照実装(RI)が提供され、Jersey 2.5.1ライブラリは共有ライブラリとして提供されます。
この章の内容は次のとおりです。
サーバー送信イベントを使用すると、標準のHTTPまたはHTTPSを経由した一方向のクライアント/サーバー接続を使用して、サーバーがWebページにデータをプッシュできるようになります。サーバー送信イベント通信モデルでは、ブラウザ・クライアントは初期接続を確立し、サーバーはデータを提供してクライアントに送信します。サーバー送信イベントの一般的な情報は、『Server-Sent Events W3C Candidate Recommendation』を参照してください。
サーバー送信イベントはHTML 5仕様の一部で、この仕様にはWebSocketテクノロジも含まれています。どちらの通信モデルでもサーバーがクライアントにデータを一方的に送信できるようになります。しかし、サーバー送信イベントではサーバーからクライアントへの一方向通信を確立しますが、WebSocket接続では双方向の全二重通信チャネルをサーバーとクライアント間に提供し、双方向通信によるユーザーとの対話を図ります。WebSocketテクノロジとサーバー送信イベント・テクノロジには、次の主な相違点があります。
サーバー送信イベントではクライアントにデータをプッシュすることのみ可能ですが、WebSocketテクノロジではクライアントに対してデータの送信と受信の両方が可能です。
サーバー送信イベント通信モデルは単純であればあるほどサーバーのみの更新に適合しますが、WebSocketテクノロジにはサーバーのみの更新用に追加のプログラミングが必要です。
サーバー送信イベントは標準のHTTP経由で送信されるため、機能するために特別なプロトコルやサーバー実装は必要ありません。WebSocketテクノロジでは、HTTP接続をWebSocket接続に正常にアップグレードするために、サーバーがWebSocketプロトコルを理解する必要があります。
WebSocketテクノロジの詳細は、『Oracle WebLogic Serverアプリケーションの開発』の「WebLogic ServerでのWebSocketプロトコルの使用」を参照してください。
WebLogic Serverでは、Jersey 2.5.1共有ライブラリの統合によってサーバー送信イベントをサポートします。Jersey 2.5.1を介したサーバー送信イベントの使用は、JAX-RSリソースでのみサポートされます。Jersey 2.5.1でのサーバー送信イベントの詳細は、『Jersey 2.5.1 User Guide』の「Server-Sent Events (SSE) Support」を参照してください。
WebLogic Serverサーバー送信イベントAPIは、パッケージorg.glassfish.jersey.media.sse
にあります。このパッケージに含まれるインタフェースおよびクラスの詳細は、Jersey 2.5.1 API Documentationの
org.glassfish.jersey.media.sseに関するAPIドキュメントを参照してください。
サーバー送信イベント実装を使用するには、Webアプリケーションとしてパッケージ化されているJersey 2.5.1共有ライブラリを登録します。共有ライブラリを参照するには、Webアプリケーションに関連付けられているweblogic.xml
デプロイメント記述子ファイルで共有ライブラリを宣言します。詳細は、次の項を参照してください。
Webアプリケーションのデプロイの詳細は、『Oracle WebLogic Serverへのアプリケーションのデプロイ』の「WebLogic Serverデプロイメントの理解」を参照してください。
サーバー送信イベント用のサンプル・アプリケーションは、次の場所でJerseyプロジェクトから入手できます。