Jersey 0.5 is released
By sandoz on Jan 18, 2008
This release has improved the deployment and configuration process. The annoying pre-compile step is gone, which means no need to modify build configuration scripts. It is now a very simple process. For example, using Grizzly:
SelectorThread s = GrizzlyServerFactory.create("http://locahost:9090/");
Or the Light Weight HTTP server:
HttpServer s = HttpServerFactory.create("http://localhost:9090/");
Or using standard elements in a web.xml file for Web applications deployed using Glassfish (or other compliant Servlet containers):
Underneath the covers, thanks to Frank's ASM code, Jersey will efficiently scan Java class files present in the java.class.path for Grizzly and the Light Weight HTTP server or in the WEB-INF/classes and WEB-INF/lib for Web applications. This mechanism is extensible so it is possible to plug in a different discovery mechanism. Jersey also comes with an implementation to scan Java class files given a set of package names, which can be configured for a Web application as follows:
A recent comment on Marc's blog entry about Jersey Spring integration showed how this could be achieved for Spring for resource classes present in the Spring context.
The URI dispatching architecture was completely re-written is much more flexible and pluggable. So we can easily adapt to changing requirements in the JAX-RS API in addition to Jersey specific requirements. For example, we integrated Frank's efficient URI matching algorithm as a component that kicks in when there are more than 8 URI path templates to be matched (that number can probably be reduced, but I was being conservative!). I am sure there is more innovation and performance improvements we can do here.
The examples have been converted to use NetBeans 6.0.
The next release, 0.6, is scheduled for March 7th, as show here, which lists a number of areas we plan to work on. There are three main goals for the 0.6 release:
a high-level client-side API;
a better component and life-cycle model for all JAX-RS related components; and
model, view controller support with a pluggable template rendering.
I think these goals align well with feedback we have been getting about JAX-RS and Jersey. They are rather ambitious but we will try our best to get it all done!