REST return Types



REST webservice methods can return different types values based on requirements.
REST webservice methods return JSON data, XML data, String, Integer or Long etc.

@Path("/item")
class ItemRestServiceImpl{

@GET
public String getName(){
return new Item("Pencil","100").toString();
// returns a String representation of Item.
}

@GET
@Path("maxprice")
public Integer getPencilPrice(){
return 90;
// returns numeric constant value
}

@GET
@Produces(MediaType.APPLICATION_XML)
public Item getItemAsXml(){
return new Item("Pencil","100");
/*returns Item in XML format. Runtime JAXB converts 
                the item object into XML format.*/
}

@GET
@Produces(MediaType.APPLICATION_JSON)
public Response getItemAsJsonInResponse(){
return Response.ok(new Item("Pencil", "Black", 
               "70"),MediaType.APPLICATION_JSON).build();
/* creating the response object which contains the Item object 
                and JAXB converts the item object into JSON format.*/
}
}