Fixed Upgrade Response to make a distinction between when headers are available from a response and when they are copied to and copied from the real response.
This exposed the fact that the extension header was being set twice. Fixed that and now test webapp works again.
+ Making WebSocketServletFactory always load a new
WebSocketServerFactory
+ Making WebSocketServerFactory need a ServletContext
to construct it, if appropriate (the WebSocketHandler
approach doesn't use a ServletContext)
+ NativeWebSocketConfiguration is now a bean of
ServerContainer
+ Removed WebSocketServletFactory.init(ServletContext) method
+ Renamed WebSocketServletFactory.init() to .start()
+ Renamed WebSocketServletFactory.cleanup() to .stop()
+ CDI & Websocket now works
+ Using a ServletContextListener now works
+ DecoderFactory and EncoderFactory now work
Improved to the toString and dump output of connections, endpoints and channel to assist with debugging
made the SSL callbacks and runnables Invocable to avoid thread starvation.
+ WebSocketServerContainerInitializer now initializes the
MappedWebSocketCreator, WebSocketServerFactory, and
ServerContainer directly, but puts the components needed
by WebSocketUpgradeFilter into ServletContext attributes
that it can obtain in its own init()
+ Added optional org.eclipse.jetty.websocket.jsr356.addDynamicFilter
init-param/attribute key to disable/enable the automatic addition
of the WebSocketUpgradeFilter during JSR356 init (to allow
WEB-INF/web.xml specified filter to operate instead)
+ Added WebSocketServerContainerINitializer.isEnabledViaContext()
to make testing the init-param and attributes more generic
+ Tests for WebSocket upgrade now evaluates the request
from least common feature to most common feature, so as
minimize the testing of the request object on every request