パッケージ jakarta.websocket.server
インターフェース ServerContainer
- すべてのスーパーインターフェース:
- WebSocketContainer
 - public interface ServerContainer extends WebSocketContainer ServerContainer は、サーバー側 デプロイで使用できる WebSocketContainer の特殊なビューです。Websocket アプリケーションごとに 1 つの ServerContainer インスタンスがあります。ServerContainer は、サーバーエンドポイントを登録できるメソッドを保持します。- Websocket 対応の Web コンテナーの場合、開発者は、ServletContext で - jakarta.websocket.server.ServerContainerという名前の属性として取得することにより、ServerContainer インスタンスへの参照を取得できます。このようにして、このインターフェースに保持されている登録メソッドを呼び出して、エンドポイントを含む WAR ファイルの デプロイ中に ServletContextListener からサーバーエンドポイントを登録できます。サーバーエンドポイントは、Web アプリケーションの開始後に登録することもできます。- Web コンテナーの外部で実行される WebSocket 実装には、アプリケーションデプロイ時に開発者に ServerContainer インスタンスを提供する他の手段があります。 - アプリケーションデプロイフェーズが完了し、websocket アプリケーションが受信接続の受け入れを開始すると、登録メソッドは呼び出されなくなります。 - 作成者:
- dannycoward
 
- メソッドのサマリー- すべてのメソッド インスタンスメソッド 抽象メソッド - 修飾子と型 - メソッド - 説明 - void- addEndpoint(ServerEndpointConfig serverConfig)指定された構成によって記述された特定のエンドポイントをこの ServerContainer にデプロイします。- void- addEndpoint(ClassSE<?> endpointClass)指定されたアノテーション付きエンドポイントをこの ServerContainer にデプロイします。- void- upgradeHttpToWebSocket(ObjectSE httpServletRequest, ObjectSE httpServletResponse, ServerEndpointConfig sec, MapSE<StringSE,StringSE> pathParameters)- HttpServletRequestおよび- HttpServletResponseで表される HTTP 接続を WebSocket プロトコルにアップグレードし、提供された- ServerEndpointConfigに従って WebSocket 接続を確立します。- インターフェース jakarta.websocket.WebSocketContainer から継承されたメソッド- connectToServer, connectToServer, connectToServer, connectToServer, getDefaultAsyncSendTimeout, getDefaultMaxBinaryMessageBufferSize, getDefaultMaxSessionIdleTimeout, getDefaultMaxTextMessageBufferSize, getInstalledExtensions, setAsyncSendTimeout, setDefaultMaxBinaryMessageBufferSize, setDefaultMaxSessionIdleTimeout, setDefaultMaxTextMessageBufferSize
 
 
- メソッドの詳細- addEndpoint- void addEndpoint(ClassSE<?> endpointClass) throws DeploymentException 指定されたアノテーション付きエンドポイントをこの ServerContainer にデプロイします。- パラメーター:
- endpointClass- アノテーション付きエンドポイントのクラス
- 例外:
- DeploymentException- アノテーション付きエンドポイントの形式が正しくない場合。
- IllegalStateExceptionSE- 含まれている websocket アプリケーションがすでにデプロイされている場合。
 
 - addEndpoint- void addEndpoint(ServerEndpointConfig serverConfig) throws DeploymentException 指定された構成によって記述された特定のエンドポイントをこの ServerContainer にデプロイします。- パラメーター:
- serverConfig- 登録される論理エンドポイントを表す構成インスタンス。
- 例外:
- DeploymentException- エンドポイントの形式が不適切だった場合。
- IllegalStateExceptionSE- 含まれている websocket アプリケーションがすでにデプロイされている場合。
 
 - upgradeHttpToWebSocket- void upgradeHttpToWebSocket(ObjectSE httpServletRequest, ObjectSE httpServletResponse, ServerEndpointConfig sec, MapSE<StringSE,StringSE> pathParameters) throws IOExceptionSE, DeploymentException - HttpServletRequestおよび- HttpServletResponseで表される HTTP 接続を WebSocket プロトコルにアップグレードし、提供された- ServerEndpointConfigに従って WebSocket 接続を確立します。- このメソッドは主に、フロントコントローラーパターンを実装するフレームワークで使用することを目的としています。提供されたエンドポイントはデプロイしません。 - WebSocket 実装が Jakarta Servlet コンテナーの一部としてデプロイされていない場合、このメソッドは - UnsupportedOperationExceptionSE をスローします。- パラメーター:
- httpServletRequest- RFC 6455 のセクション 4.0 に従って WebSocket ハンドシェイクとして処理される- HttpServletRequest。
- httpServletResponse- RFC 6455 のセクション 4.0 に従って、- httpServletRequestを WebSocket ハンドシェイクとして処理するときに使用される- HttpServletResponse。
- sec- WebSocket エンドポイントの構成に使用するサーバーエンドポイント構成
- pathParameters- このメソッドの呼び出しによって確立された WebSocket 接続に使用されるパスパラメーターの名前と値 (存在する場合) のマッピングを提供します。そのようなマッピングが定義されていない場合は、空の Map を渡す必要があります。
- 例外:
- IllegalStateExceptionSE- 提供されたリクエストが WebSocket ハンドシェイクの要件を満たしていない場合
- UnsupportedOperationExceptionSE- WebSocket 実装が Jakarta Servlet コンテナーの一部としてデプロイされていない場合
- IOExceptionSE- WebSocket 接続の確立中に I/O エラーが発生した場合
- DeploymentException- 構成エラーにより WebSocket 接続の確立が妨げられた場合
- 導入:
- WebSocket 2.1