RESTful Webservices with Java (Jersey / JAX-RS) This tutorial explains how to develop RESTful web services in Java with the JAX-RS reference implementation Jersey. In this tutorial Eclipse 4.2 (Juno), Java 1.6, Tomcat 6.0 and JAX-RS 1.1. (Jersey 1.5) is used.
@Produces("image/*")
public Response getImage(@PathParam("image") String image) {
File f = new File(image);
if (!f.exists()) {
throw new WebApplicationException(404);
}
String mt = new MimetypesFileTypeMap().getContentType(f);
return Response.ok(f, mt).build();
}
Representational state transfer (REST) was introduced in early 2000 by Roy Fielding's doctoral dissertation. However, in the Java community, it was not standardized until JSR 311(JAX-RS) was finalized in 2008. The first release of its reference implementation is even later. In this article, I introduce Jersey, which is the reference implementation of JSR 311, by describing its essential APIs and annotations. I'll also show you how you can smoothly transfer from servlet-style services to RESTful services by integrating Jersey into Apache Tomcat.
Getting started with Jersey is very easy. First, download the latest distribution of Jersey and unzip it. If you are using NetBeans IDE 6.x, you do not need to download the Jersey distribution. Instead, install the RESTful Web Services plugin from the Plu