Monthly Archives: October 2012

Jersey 2.0-m09 has been released

With JavaOne 2012 over we are trying to resume the usual Jersey 2.0 release cycle and I am happy to announce that Jersey 2.0-m09 has been released. The last sprint was relatively short especially with all the additional distracting tasks we had to focus on prior to and during the JavaOne week. The number of significant updates in this release is thus moderate, yet there are couple of updates which I’d like to point out:

  • Migration to the JAX-RS 2.0 Public Review Draft API version. This was an important move so that people who want to play with JAX-RS 2.0 PR API during the currently running review period are able to grab an implementation compatible with the latest published version of the API. Note however that there are still some aspects of the latest JAX-RS API that are under development at the moment.
  • Again, lot of bug fixes. We continued to keep our focus on resolving bugs. We do this not only to improve stability of Jersey code as such but also to make sure we’re properly covering all aspects of the new JAX-RS 2.0 API features which in turn helps us verify the API works as intended. So as with previous milestone, many of the bugs that we have fixed recently were in the category of strict compliance to the JAX-RS 2.0 API and specification and often involved corner-case situations.

If you are interested in more details, check out the Jersey Jira for the list of all the resolved feature requests, tasks and issues in the milestone 09.

For a complete overview of the updates in the Jersey API, please have a look at the Jersey 2.0-m09 API documentation. Note that we are still in the middle of a development cycle and Jersey 2.0-m09 is an early development preview release so you can still expect significant changes in the API since the parts of the API are moving every now and then. You may want to also bookmark the Jersey 2.0 snapshot API documentation link to if you want to see the latest development version of the API. Also feel free to browse Jersey 2 source code on GitHub and check out the Jersey examples.

You may also want to check Jersey User guide that also contains an initial draft of a migration guide for your Jersey 1.x code.

Jersey 2.0 provides support for Java SE HTTP Server, Grizzly 2 HTTP server, Servlet 2.5 or higher containers as well as OSGi containers on the server side and HTTPURLConnection-based or Grizzly asynchronous client transport connectors. To leverage JAX-RS/Jersey server-side async features in a Servlet container, you need a container that supports Servlet 3.0 at least. Jersey supports asynchronous resource invocations on Grizzly 2 HTTP server too.

All the 2.0-m09 milestone binaries, including the source & apidocs jars, are available for download under the Jersey 2.0 maven root group identifier org.glassfish.jersey from the central maven repository as well as from the maven repository.

To run Jersey 2 you’ll need the core artifacts:


Additionally, you’ll need a Jersey container implementation, e.g. Jersey Grizzly2 HTTP container:


Chances are you are using maven on your project. If you do, there is a very easy and convenient way to start playing with Jersey 2.0 by generating the skeleton application from one of the Jersey 2.0 maven archetypes that we provide. For instance, to create a Jersey 2.0 application using the Grizzly 2 HTTP server container, use

mvn archetype:generate -DarchetypeGroupId=org.glassfish.jersey.archetypes -DarchetypeArtifactId=jersey-quickstart-grizzly2 -DarchetypeVersion=2.0-m09

If you want to create a Servlet container deployable Jersey 2.0 web application instead, use

mvn archetype:generate -DarchetypeGroupId=org.glassfish.jersey.archetypes -DarchetypeArtifactId=jersey-quickstart-webapp -DarchetypeVersion=2.0-m09

Have fun looking around, running examples, testing new additions to the set of features and playing with Jersey 2. To provide feedback send us an email to our users mailing list (archived here)

or log discovered bugs & new feature requests in Jersey Jira issue tracker.