Web Services Support in Java - JAX-WS and JAX-RS

Java supports both SOAP-based and REST-style web services.



  • Java API for XML Web services (JAX-WS) can be used for SOAP-based as well as REST-style, but more suited for SOAP.

    • The current version of JAVA–WS is 2.x and previous version was called JAX RPC 1.x.

    • JAX–WS is commonly shortened to JWS for Java Web Services.

    • JAX–WS was initially seperate, but was then bundled into the Metro web services pack.

      • Metro is part of java 6 and above and hence JAX-WS web services can be compiled and deployed in java 6 and above without any additional software.

      • The downloaded Metro release is a way to do JAX–WS under core java 5.

        • You can download metro from metro.java.net and just JAX-WS from jax-ws.java.net.

      • JAX-WS alone supports only SSL (it supports WS-I BSP).

        • Hence if you want end-to-end message-level security then you need the WSIT/Tango layer of Metro.

        • In addition to JAX-WS RI, metro contains another layer, WSIT/Tango which provides WS-*: Security, SecureConversation, Trust, ReliableMessaging, AtomicTransactions and MEX.

    • JAX–WS require at least core java 5 because of the support of annotation.

    • EJBs can serve as endpoints if hosted in a container with runtime and web service support.



  • Java API for XML – Restful web services (JAX–RS) is the standard specification for REST web services.

    • Jersy is a popular JAX-RS implementation.

    • Java defines standard REST support via JAX-RS (The Java API for RESTful Web Services) in JSR 311.

    • You can download JAX-RS from Jersy Homepage at jersey.java.net.

    • Jersey is the open source, production quality, JAX-RS (JSR 311) Reference Implementation for building RESTful Web services.

      • In addition to the Reference Implementation, Jersey also provides an API so that developers may extend Jersey to suit their needs. 

    • Jersy is only one of the implementations for it. There are also other implementations like RESTEasy which may also be used.

      • Since all these implementations are based on the JAX-RS API, you can easily switch to another implementation anytime.

Search the Web

Custom Search

Searches whole web. Use the search in the right sidebar to search only within javajee.com!!!