パッケージ 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
    • 必須定数のサマリー

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

      オプション要素  
      修飾子と型 オプションの要素 説明
      ClassSE<? extends ServerEndpointConfig.Configurator>configurator
      開発者がこのエンドポイントの新しいインスタンスをさらに構成するために使用するオプションのカスタムコンフィギュレータークラス。
      ClassSE<? extends Decoder>[]decoders
      このエンドポイントが使用するデコーダクラスの順序付けられた配列。
      ClassSE<? extends Encoder>[]encoders
      このエンドポイントが使用するエンコーダクラスの順序付き配列。
      StringSE[]subprotocols
      このエンドポイントがサポートする 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

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