In today's environment, you can create a web service application using several options. You can use one or more of the several standard and widely accepted protocols for communication. For example SOAP, XML/HTTP, RESTful HTTP, and CORBA (Common Object Request Broker Architecture, which was very popular in olden days but not so frequently used now.
You also have a choice of different transports such as HTTP, JMS, JBI and the choice of front-end API's like JAX-RS and JAX-WS. Having so many options for web service development, there is a need for an open source services framework to glue all the above mentioned options together and that is what Apache CXF does.
In this tutorial, you will learn how to use CXF to create both a web service and a client that consumes the service, using one or more of the options that we have listed above. This tutorial will walk you through the entire code development for both server and the client. As each application can use only one of the options from each category, namely frontend, transport and protocol, considering all permutations and combinations of these three, the number of applications will be exorbitantly high.
This tutorial discusses the development of following projects in detail −
CXF with Plain Old Apache CXF Objects (POJO)
CXF with JAX-WS
CXF with WSDL
CXF with JAX-RS
CXF with JMS
To keep it simple, we have used maven with its command line interface. You may use your preferred IDE for creating a maven project.
In the next chapter, let us get started with the first one.