The JMS 2.0 Proposed Final Draft was published on 26 Febuary 2013. The specification and API documentation may be downloaded from the JCP website here.
In addition the API documentation may be browsed online here. (This link now takes you to the final API docs)
Comments are invited but must be received in time to be considered and incorporated in time for the final submission on 20 March 2013. You can either send email to the JMS spec user list (you will need to subscribe first: see how to subscribe) or you can send your comments directly to the specification lead, Nigel Deakin.
You are also invited to try out the current version of the JMS 2.0 reference implementation. This is still under development but is essentially feature complete.
(Strictly speaking these are not actually reference implementations. They are community projects which will be used to create the reference implementation when JMS 2.0 is released.)
A NetBeans project which demonstrates some new features of JMS 2.0 may be downloaded as a zip or checked out from the project's subversion repository here. An earlier version was demonstrated at JavaOne 2012.
This demonstration (which has been updated to work with GlassFish build 82 (glassfish-4.0-b82-03_22_2013) shows
A full list of the new features, changes and clarifications introduced in JMS 2.0 is given in the specification. See section B.5 "Version 2.0" of the "Change history" appendix. Here is a summary:
The JMS 2.0 specification now requires JMS providers to implement both P2P and Pub-Sub.
The following new messaging features have been added in JMS 2.0:
The following change has been made to aid scalability:
Several changes have been made to the JMS API to make it simpler and easier to use:
A new chapter has been added which describes some additional restrictions and behaviour which apply when using the JMS API in the Java EE web or EJB container. This information was previously only available in the EJB and Java EE platform specifications.
A new chapter has been added which defines a number of standard configuration properties for JMS message-driven beans.
New methods have been added to Session which return a MessageConsumer on a durable topic subscription. Applications could previously only obtain a domain-specific TopicSubscriber, even though its use was discouraged.
The specification has been clarified in various places.