This example shows how to use JAX-RS to implement a REST service.
This example uses blueprint to deal with the jaxrs-server and Apache CXF as the implementation of the JAXRS specification.
It implements a BookingService
with a REST implementation.
The “client” bundle uses the BookingService
with a REST client stub.
Booking
POJO and the BookingService
interface.BookingServiceRest
implementation of the BookingService
interface.BookingService
.The build uses Apache Maven. Simply use:
mvn clean install
On a running Karaf instance, register the features repository using:
karaf@root()> feature:repo-add mvn:org.apache.karaf.examples/karaf-rest-example-features/LATEST/xml
Then, you can install the service provider feature:
karaf@root()> feature:install karaf-rest-example-provider
And the service client feature using Java Http:
karaf@root()> feature:install karaf-rest-example-client-http
The karaf-rest-example-client-http
feature provides booking:*
commands you can use to call the REST service.
And the service client feature using Apache CXF:
karaf@root()> feature:install karaf-rest-example-client-cxf
The karaf-rest-example-client-cxf
feature provides booking:*
commands you can use to call the REST service.
Once you have install a client feature, you can use booking:add
and booking:list
commands to interact with the REST service.
karaf@root()> booking:add 1 "John Doe" AF520 karaf@root()> booking:list