Sponsored Links
-->

Monday, March 5, 2018

Java API for RESTful Web Services 2.0 - YouTube
src: i.ytimg.com

JAX-RS: Java API for RESTful Web Services (JAX-RS) is a Java programming language API spec that provides support in creating web services according to the Representational State Transfer (REST) architectural pattern. JAX-RS uses annotations, introduced in Java SE 5, to simplify the development and deployment of web service clients and endpoints.

From version 1.1 on, JAX-RS is an official part of Java EE 6. A notable feature of being an official part of Java EE is that no configuration is necessary to start using JAX-RS. For non-Java EE 6 environments a small entry in the web.xml deployment descriptor is required.


Video Java API for RESTful Web Services



Specification

JAX-RS provides some annotations to aid in mapping a resource class (a POJO) as a web resource. The annotations include:

  • @Path specifies the relative path for a resource class or method.
  • @GET, @PUT, @POST, @DELETE and @HEAD specify the HTTP request type of a resource.
  • @Produces specifies the response Internet media types (used for content negotiation).
  • @Consumes specifies the accepted request Internet media types.

In addition, it provides further annotations to method parameters to pull information out of the request. All the @*Param annotations take a key of some form which is used to look up the value required.

  • @PathParam binds the method parameter to a path segment.
  • @QueryParam binds the method parameter to the value of an HTTP query parameter.
  • @MatrixParam binds the method parameter to the value of an HTTP matrix parameter.
  • @HeaderParam binds the method parameter to an HTTP header value.
  • @CookieParam binds the method parameter to a cookie value.
  • @FormParam binds the method parameter to a form value.
  • @DefaultValue specifies a default value for the above bindings when the key is not found.
  • @Context returns the entire context of the object (for example @Context HttpServletRequest request).

Maps Java API for RESTful Web Services



JAX-RS 2.0

In January 2011 the JCP formed the JSR 339 expert group to work on JAX-RS 2.0. The main targets are (among others) a common client API and support for Hypermedia following the HATEOAS-principle of REST. In May 2013, it reached the Final Release stage.


Testing Web Services Unit Testing, Data Layer Testing, Web API ...
src: slideplayer.com


Implementations

Implementations of JAX-RS include:

  • Apache CXF, an open source Web service framework
  • Jersey, the reference implementation from Sun (now Oracle)
  • RESTeasy, JBoss's implementation
  • Restlet
  • Apache Wink, Apache Software Foundation Incubator project, the server module implements JAX-RS
  • WebSphere Application Server from IBM:
    • Version 7.0: via the "Feature Pack for Communications Enabled Applications"
    • Version 8.0 onwards: natively
  • WebLogic Application Server from Oracle, see notes
  • Apache Tuscany (http://tuscany.apache.org/documentation-2x/sca-java-bindingrest.html)
  • Cuubez framework (http://www.cuubez.com)
  • Everrest, Codenvy's Implementation
  • Jello-Framework, Java Application Framework optimized for Google App Engine, including a powerful RESTful engine and comprehensive Data Authorization model.

REST Web Services 01 - Introduction - YouTube
src: i.ytimg.com


Tutorials

  • https://javabrains.io/courses/javaee_jaxrs/
  • http://docs.oracle.com/javaee/6/tutorial/doc/giepu.html
  • http://www.vogella.com/tutorials/REST/article.html
  • http://www.mkyong.com/tutorials/jax-rs-tutorials/
  • http://www.coderpanda.com/jax-rs-tutorial/
  • http://howtodoinjava.com/restful-web-service/

Testing Web Services Unit Testing, Data Layer Testing, Web API ...
src: slideplayer.com


Notes


Consuming Java Restful Web Services in Java Swing Application ...
src: i.ytimg.com


References

  • Hadley, Marc and Paul Sandoz, eds. (September 17, 2009). JAX-RS: Java API for RESTful WebServices (version 1.1), Java Community Process

Source of article : Wikipedia