-
-
Notifications
You must be signed in to change notification settings - Fork 750
How to use the older WebSocket draft 00 hybi 00 hixie 76 protocol
Before proceeding, please ensure that you understand the security implications of enabling the hybi-00 protocol. Recommended reading: http://www.ietf.org/mail-archive/web/hybi/current/msg04744.html
An older WebSocket Protocol implementation called draft-00, hybi-00 or hixie-76 is used by (at least) the following browsers and versions:
- Opera 11.00 to 12.02
- Firefox 4 and 5
- Safari 5.0.1 and 5.1 (including iOS 4.2 and 5)
- Chrome 6 to 13
There are security issues with it and it's in some cases disabled by default in the browser. In that case Atmosphere will automatically fall back to other transports.
If you need to support draft-00/hybi-00/hixie-76 you need to use Atmosphere 2.0.5 or newer with Jetty 7 or 8 (Jetty 9 does NOT support older WebSocket protocol drafts) and add the following init-param in web.xml:
<init-param>
<param-name>org.atmosphere.websocket.jetty.minVersion</param-name>
<param-value>-1</param-value>
</init-param>
If you need the Atmosphere protocol enabled, or if you need CORS support you must also set the following init-param in web.xml (no issues have been found, but it might cause compatibility issues):
<init-param>
<param-name>org.atmosphere.cpr.disallowModifyQueryString</param-name>
<param-value>true</param-value>
</init-param>
See #1403 for more information about the problem.
- Understanding Atmosphere
- Understanding @ManagedService
- Using javax.inject.Inject and javax.inject.PostConstruct annotation
- Understanding Atmosphere's Annotation
- Understanding AtmosphereResource
- Understanding AtmosphereHandler
- Understanding WebSocketHandler
- Understanding Broadcaster
- Understanding BroadcasterCache
- Understanding Meteor
- Understanding BroadcastFilter
- Understanding Atmosphere's Events Listeners
- Understanding AtmosphereInterceptor
- Configuring Atmosphere for Performance
- Understanding JavaScript functions
- Understanding AtmosphereResourceSession
- Improving Performance by using the PoolableBroadcasterFactory
- Using Atmosphere Jersey API
- Using Meteor API
- Using AtmosphereHandler API
- Using Socket.IO
- Using GWT
- Writing HTML5 Server-Sent Events
- Using STOMP protocol
- Streaming WebSocket messages
- Configuring Atmosphere's Classes Creation and Injection
- Using AtmosphereInterceptor to customize Atmosphere Framework
- Writing WebSocket sub protocol
- Configuring Atmosphere for the Cloud
- Injecting Atmosphere's Components in Jersey
- Sharing connection between Browser's windows and tabs
- Understanding AtmosphereResourceSession
- Manage installed services
- Server Side: javadoc API
- Server Side: atmosphere.xml and web.xml configuration
- Client Side: atmosphere.js API