Interface ServerContainer
- All Superinterfaces:
WebSocketContainer
Provides the ability to deploy endpoints programmatically.
-
Method Summary
Modifier and TypeMethodDescriptionvoidDeploys the endpoint configured by the givenServerEndpointConfig.voidaddEndpoint(Class<?> clazz) Deploys the given endpoint class.voidupgradeHttpToWebSocket(Object httpServletRequest, Object httpServletResponse, ServerEndpointConfig sec, Map<String, String> pathParameters) Upgrade the HTTP connection represented by theHttpServletRequestandHttpServletResponseto the WebSocket protocol and establish a WebSocket connection as per the providedServerEndpointConfig.Methods inherited from interface WebSocketContainer
connectToServer, connectToServer, connectToServer, connectToServer, getDefaultAsyncSendTimeout, getDefaultMaxBinaryMessageBufferSize, getDefaultMaxSessionIdleTimeout, getDefaultMaxTextMessageBufferSize, getInstalledExtensions, setAsyncSendTimeout, setDefaultMaxBinaryMessageBufferSize, setDefaultMaxSessionIdleTimeout, setDefaultMaxTextMessageBufferSize
-
Method Details
-
addEndpoint
Deploys the given endpoint class. The class must be annotated withServerEndpointor extendEndpoint.- Parameters:
clazz- The endpoint class to deploy- Throws:
DeploymentException- If the endpoint cannot be deployed
-
addEndpoint
Deploys the endpoint configured by the givenServerEndpointConfig.- Parameters:
sec- The server endpoint configuration- Throws:
DeploymentException- If the endpoint cannot be deployed
-
upgradeHttpToWebSocket
void upgradeHttpToWebSocket(Object httpServletRequest, Object httpServletResponse, ServerEndpointConfig sec, Map<String, String> pathParameters) throws IOException, DeploymentExceptionUpgrade the HTTP connection represented by theHttpServletRequestandHttpServletResponseto the WebSocket protocol and establish a WebSocket connection as per the providedServerEndpointConfig.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- TheHttpServletRequestto be processed as a WebSocket handshake as per section 4.0 of RFC 6455.httpServletResponse- TheHttpServletResponseto be used when processing thehttpServletRequestas a WebSocket handshake as per section 4.0 of RFC 6455.sec- The server endpoint configuration to use to configure the WebSocket endpointpathParameters- 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 handshakeUnsupportedOperationException- if the WebSocket implementation is not deployed as part of a Jakarta Servlet containerIOException- if an I/O error occurs during the establishment of a WebSocket connectionDeploymentException- if a configuration error prevents the establishment of a WebSocket connection- Since:
- WebSocket 2.0
-