@OnMessage アノテーション付きの不正な WebSocket メソッドを報告します。
このアノテーションは、WebSocket の受信メッセージを処理するメソッドをマークします。 各 WebSocket エンドポイントは、各 WebSocket メッセージ形式 (テキスト、バイナリ、pong) ごとにメッセージを処理するメソッドを 1 つだけ持つことができます。 @OnMessage アノテーション付きのメソッドは、以下の一連のパラメーターを任意の順序で持つことができます。
String。String と boolean のペア。Reader。Decoder.Text または Decoder.TextStream) を持つオブジェクトパラメーター。
byte[] または ByteBuffer。byte[] と boolean のペア、または ByteBuffer と boolean のペア。InputStream。Decoder.Binary または
Decoder.BinaryStream) を持つオブジェクトパラメーター。
PongMessage。@PathParam アノテーションが付いた任意の数の String または Java プリミティブパラメーター。Session パラメーター。
メソッドが値を返す場合、WebSocket ランタイムはそれをピアに返す必要があるメッセージとして解釈します。
使用できる戻り値の型は、String、ByteBuffer、byte[]、Java のプリミティブまたはクラスと同等の型、もしくは専用のエンコーダーが存在する型なら何でも使用できます。 メソッドが Java のプリミティブ値を返す場合、開発者がこのエンドポイント用に構成されている型に対応するエンコーダーを提供していない限り、実装は Java のプリミティブを標準的な Java 文字列表現に変換したものを使用して送信するテキストメッセージを作成する必要があり、その場合は前述のエンコーダーが使用されなくてはいけません。 このメソッドが Java プリミティブに相当するクラスを返す場合、実装では前述のように Java プリミティブに相当するものからテキストメッセージを作成する必要があります。