Interface ServerContainer

All Superinterfaces:
WebSocketContainer

public interface ServerContainer extends WebSocketContainer
Provides the ability to deploy endpoints programmatically.
  • Method Details

    • addEndpoint

      void addEndpoint(Class<?> clazz) throws DeploymentException
      Throws:
      DeploymentException
    • addEndpoint

      void addEndpoint(ServerEndpointConfig sec) throws DeploymentException
      Throws:
      DeploymentException
    • upgradeHttpToWebSocket

      void upgradeHttpToWebSocket(Object httpServletRequest, Object httpServletResponse, ServerEndpointConfig sec, Map<String,String> pathParameters) throws IOException, DeploymentException
      Upgrade the HTTP connection represented by the HttpServletRequest and HttpServletResponse to the WebSocket protocol and establish a WebSocket connection as per the provided ServerEndpointConfig.

      This method is primarily intended to be used by frameworks that implement the front-controller pattern. It does not deploy the provided endpoint.

      If the WebSocket implementation is not deployed as part of a Jakarta Servlet container, this method will throw an UnsupportedOperationException.

      Parameters:
      httpServletRequest - The HttpServletRequest to be processed as a WebSocket handshake as per section 4.0 of RFC 6455.
      httpServletResponse - The HttpServletResponse to be used when processing the httpServletRequest as a WebSocket handshake as per section 4.0 of RFC 6455.
      sec - The server endpoint configuration to use to configure the WebSocket endpoint
      pathParameters - Provides a mapping of path parameter names and values, if any, to be used for the WebSocket connection established by the call to this method. If no such mapping is defined, an empty Map must be passed.
      Throws:
      IllegalStateException - if the provided request does not meet the requirements of the WebSocket handshake
      UnsupportedOperationException - if the WebSocket implementation is not deployed as part of a Jakarta Servlet container
      IOException - if an I/O error occurs during the establishment of a WebSocket connection
      DeploymentException - if a configuration error prevents the establishment of a WebSocket connection
      Since:
      WebSocket 2.0