Section 1. Identification
Submitting Member: Oracle
Name of Contact Person: Danny Coward
E-Mail Address: danny.coward
Telephone Number: +1 415 350 1701
Fax Number: +1 408 276 4185
Specification Lead: Danny Coward
E-Mail Address: danny.coward
Telephone Number: +1 415 350 1701
Fax Number: -, +1 408 276 4185
Initial Expert Group Membership:
Supporting this JSR:
IBM
SAP
RedHat
Section 2: Request
This JSR will define a standard API for creating WebSocket
applications.
There is a wide range of web applications that rely on timely
updates from a central server like stock tickers, live maps, chat
applications, collaborative online tools and multiplayer web-based
games. WebSocket offers solution to the problems of latency,
scalability and performance associated with HTTP based solutions
like polling, long-polling and HTTP-streaming. There is a lot of
interest in the Java developer community in creating web
applications for the Java platform that utilize WebSocket. Given
that the definition of WebSocket protocol is a proposed standard,
and that the major web browsers either support, or plan to support
it in their next major release, the time is right for a standard
Java API for WebSocket.
This JSR will provide support in the Java EE platform for:-
This specification is targeted for Java EE.
This specification targets the Java EE 7 Platform. It will be based on the corresponding release of the Java SE platform.
No. Just the SE/EE Executive Committee.
The Java community has already seen the need to use WebSocket
from Java applications, as can be seen from the list of projects
that already provide a way to do so. The Java community is best
served by one standard API for using WebSocket in an application.
Though WebSocket applications could be created by low level I/O
APIs in Java SE, this approach is cumbersome and difficult. There
is no standard Java API that is high enough level to make the
creation of WebSocket applications simple.
Since WebSocket is TCP based, and uses an HTTP 'handshake' to
initiate and terminate a WebSocket session, this project will
likely build on existing networking and HTTP-based APIs where
appropriate. This JSR will work closely with the Java Servlet 3.1
expert group who are exploring the integration of the intial
handshake into the Java Servlet model.
Possibly: javax.websocket.* or under java.net.websocket.
No.
No.
This JSR will use the I18N support in Java SE.
No.
We hope to deliver the final specification, reference implementation, and TCK in the Q1 of 2013. A rough schedule would be:
Apr 2012 | Expert group formed |
Q3 2012 | Early Draft review |
Q4 2012 | Public Review |
Q1 2013 | Final release |
The primary means of communication will be email, with conference calls and face-to-face meetings scheduled as needed. We will solicit feedback from the community and leverage the open source development model.
websocket-spec java.net project site will be used to track all issues and disseminate information on the progress of the JSR. The Expert Group will conduct business on a publicly readable alias. A private alias will be used only for EG administrative matters, as needed.
- Is the schedule for the JSR publicly available, current, and updated regularly?
The schedule will be available on the project page for the JSR.
- Can the public read and/or write to a wiki for the JSR?
We'll use a public mailing list for comments.
- Is there a publicly accessible discussion board for the JSR that you read and respond to regularly?
We'll track such discussions and respond to them on the public comment mailing list.
- Have you spoken at conferences and events about the JSR recently?
No
- Are you using open-source processes for the development of the RI and/or the TCK?
Yes, the RI will be developed as a java.net project.
- What are the Terms of Use required to use the collaboration tools you have prepared to use with the Expert Group, so that prospective EG members can judge whether they are compatible with the JSPA?
The terms will be available on the project page for the JSR.
- Does the Community tab for my JSR have links to and information about all public communication mechanisms and sites for the development of my JSR?
Yes, it will point to the project page for the JSR.
The RI will be delivered standalone and possibly bundled with some future release of Glassfish. The TCK will be delivered both standalone and as part of a suitable future release of the Java EE TCK. See the business terms for details.
N/A
Provide the links for the attached licenses
The Expert Group will conduct business on jsr356-experts@websocket-spec.java.net mailing list which is publicly readable.
A JIRA issue tracker for websocket-spec java.net project will be used for this purpose. The issue tracker URL is http://java.net/jira/browse/WEBSOCKET_SPEC
Expert Group's publicly readable mailing list will be archived at http://java.net/projects/websocket-spec/lists/jsr356-experts/archive
Section 3: Contributions
WebSocket Protocol Definition |
http://tools.ietf.org/html/rfc6455 |
Java Servlet 3.1 | http://jcp.org/en/jsr/detail?id=340 |
jWebSocket | http://jwebsocket.org/ |
Grizzly | http://grizzly.java.net/ |
Jetty | http://download.eclipse.org/jetty/stable-7/apidocs/org/eclipse/jetty/websocket/package-frame.html |