パッケージ jakarta.websocket.server

アノテーションインターフェース ServerEndpoint


@RetentionSE(RUNTIMESE) @TargetSE(TYPESE) public @interface ServerEndpoint
このクラスレベルのアノテーションは、それがデコレートするクラスが、デプロイされて Web ソケットサーバーの URI スペースで使用可能になる Web ソケットエンドポイントであることを宣言します。アノテーションを使用すると、開発者は、このエンドポイントが公開される URL(または URI テンプレート)、およびエンドポイントの他の重要なプロパティ(メッセージの送信に使用するエンコーダーなど)を WebSocket ランタイムに定義できます。

アノテーション付きクラスには、引数なしの public コンストラクターが必要です。

例:

 
 @ServerEndpoint("/hello");
 public class HelloServer {

     @OnMessage
     public void processGreeting(String message, Session session) {
         System.out.println("Greeting received:" + message);
     }

 }
 
 
作成者:
dannycoward
  • 必須定数のサマリー

    必須要素
    修飾子と型
    必須要素
    説明
    エンドポイントがデプロイされる URI または URI テンプレート、レベル 1(RFC 6570 を参照)。
  • オプション要素の概要

    オプション要素
    修飾子と型
    オプションの要素
    説明
    開発者がこのエンドポイントの新しいインスタンスをさらに構成するために使用するオプションのカスタムコンフィギュレータークラス。
    ClassSE<? extends Decoder>[]
    このエンドポイントが使用するデコーダクラスの順序付けられた配列。
    ClassSE<? extends Encoder>[]
    このエンドポイントが使用するエンコーダクラスの順序付き配列。
    このエンドポイントがサポートする Web ソケットプロトコルの順序付けされた配列。
  • 要素の詳細

    • value

      StringSE value
      エンドポイントがデプロイされる URI または URI テンプレート、レベル 1(RFC 6570 を参照)。URI は、Web ソケットコンテナーのルートを基準にしており、先頭に "/" を付ける必要があります。末尾の "/" は無視されます。例:
       
       @ServerEndpoint("/chat")
       @ServerEndpoint("/chat/{user}")
       @ServerEndpoint("/booking/{privilege-level}")
       
       
      戻り値:
      URI または URI テンプレート
    • subprotocols

      StringSE[] subprotocols
      このエンドポイントがサポートする Web ソケットプロトコルの順序付けされた配列。例: {"superchat"、"chat" }。
      戻り値:
      サブプロトコル。
      デフォルト:
      {}
    • decoders

      ClassSE<? extends Decoder>[] decoders
      このエンドポイントが使用するデコーダクラスの順序付けられた配列。例: 開発者が MysteryObject デコーダーを提供している場合、このエンドポイントは Web ソケットメッセージとして MysteryObjects を受信できます。websocket ランタイムは、メッセージをデコードできるリストの最初のデコーダーを使用し、残りのデコーダーは無視します。
      戻り値:
      デコーダ。
      デフォルト:
      {}
    • encoders

      ClassSE<? extends Encoder>[] encoders
      このエンドポイントが使用するエンコーダクラスの順序付き配列。例: 開発者が MysteryObject エンコーダーを提供している場合、このクラスは MysteryObjects の形式で Web ソケットメッセージを送信できます。websocket ランタイムは、メッセージをエンコードできるリストの最初のエンコーダーを使用し、残りのエンコーダーは無視します。
      戻り値:
      エンコーダ。
      デフォルト:
      {}
    • configurator

      開発者がこのエンドポイントの新しいインスタンスをさらに構成するために使用するオプションのカスタムコンフィギュレータークラス。コンフィギュレータクラスが提供されていない場合、実装は独自のクラスを使用します。実装は、論理エンドポイントごとにコンフィギュレーターの新しいインスタンスを作成します。
      戻り値:
      カスタム構成クラス、またはアノテーションに何も設定されていない場合は ServerEndpointConfig.Configurator.class
      デフォルト:
      jakarta.websocket.server.ServerEndpointConfig.Configurator.class