javax.websocket.server

Annotation Type ServerEndpoint


  • @Retention(value=RUNTIME)
     @Target(value=TYPE)
    public @interface ServerEndpoint
    This class level annotation declares that the class it decorates is a web socket endpoint that will be deployed and made available in the URI-space of a web socket server. The annotation allows the developer to define the URL (or URI template) which this endpoint will be published, and other important properties of the endpoint to the websocket runtime, such as the encoders it uses to send messages.

    The annotated class must have a public no-arg constructor.

    For example:

    
     @ServerEndpoint("/hello");
     public class HelloServer {
    
         @OnMessage
         public void processGreeting(String message, Session session) {
             System.out.println("Greeting received:" + message);
         }
    
     }
     
    Author:
    dannycoward
    • Element Detail

      • value

        public abstract String value
        The URI or URI-template, level-1 (See RFC 6570) where the endpoint will be deployed. The URI us relative to the root of the web socket container and must begin with a leading "/". Trailing "/"'s are ignored. Examples:
        
         @ServerEndpoint("/chat")
         @ServerEndpoint("/chat/{user}")
         @ServerEndpoint("/booking/{privilege-level}")
         
        Returns:
        the URI or URI-template
      • subprotocols

        public abstract String[] subprotocols
        The ordered array of web socket protocols this endpoint supports. For example, {"superchat", "chat"}.
        Returns:
        the subprotocols.
        Default:
        {}
      • decoders

        public abstract Class<? extends Decoder>[] decoders
        The ordered array of decoder classes this endpoint will use. For example, if the developer has provided a MysteryObject decoder, this endpoint will be able to receive MysteryObjects as web socket messages. The websocket runtime will use the first decoder in the list able to decode a message, ignoring the remaining decoders.
        Returns:
        the decoders.
        Default:
        {}
      • encoders

        public abstract Class<? extends Encoder>[] encoders
        The ordered array of encoder classes this endpoint will use. For example, if the developer has provided a MysteryObject encoder, this class will be able to send web socket messages in the form of MysteryObjects. The websocket runtime will use the first encoder in the list able to encode a message, ignoring the remaining encoders.
        Returns:
        the encoders.
        Default:
        {}
      • configurator

        public abstract Class<? extends ServerEndpointConfig.Configurator> configurator
        The optional custom configurator class that the developer would like to use to further configure new instances of this endpoint. If no configurator class is provided, the implementation uses its own. The implementation creates a new instance of the configurator per logical endpoint.
        Returns:
        the custom configuration class, or ServerEndpointConfig.Configurator.class if none was set in the annotation.
        Default:
        javax.websocket.server.ServerEndpointConfig.Configurator.class

Document created the 11/06/2005, last modified the 18/08/2025
Source of the printed document:https://www.gaudry.be/en/java-api-javaee-rf-javax/websocket/server/serverendpoint.html

The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.

References

  1. View the html document Language of the document:fr Manuel PHP : https://docs.oracle.com/en/java/, Annotation Type ServerEndpoint

These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author of this site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.