This documentation is for WSO2 Application Server version 5.0.0. View documentation for the latest release.

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Introducing the Sample

The sample shows some advanced functionalities of REST-based Web Services using JAX-RS (JSR-311). The REST server provides the following services:   

{
   "Order":{
       "orderId":"123",
       "drinkName":"Vanilla Flavored Coffee",
       "additions":"Milk",
       "locked":false
   }
}
 
  • A HTTP POST request to URL ${serviceURL}/orders with the following data adds an order.
<Order>
   <drinkName>Mocha Flavored Coffee</drinkName>
   <additions>Caramel</additions>
</Order>
  • An id for this order is generated at server-side and returned in the response. The response body looks like the following in JSON format.
{"Order":{
   "additions":"Caramel",
   "drinkName":"Mocha Flavored Coffee",
   "locked":false,
   "orderId":"ee1a9ec2-c8a5-4afe-8585-74df591f9990"
}}
  • A HTTP PUT request to URL ${serviceURL}/orders with the following data, where the 'orderId' is set to the one received in the response body when the order was added:
{
   "Order":{
       "orderId":"ee1a9ec2-c8a5-4afe-8585-74df591f9990",
       "additions":"Chocolate Chip Cookies"
   }
}
  • It updates the 'additions' of the order "ee1a9ec2-c8a5-4afe-8585-74df591f9990" from "Caramel" to "Chocolate Chip Cookies". The response will be in XML-format as follows. 
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
   <Order>
      <additions>Chocolate Chip Cookies</additions>
      <drinkName>Full Leaf Green Tea</drinkName>
      <locked>true</locked>
      <orderId>ee1a9ec2-c8a5-4afe-8585-74df591f9990</orderId>
   </Order>
  • A HTTP DELETE request to URL ${serviceURL}/orders/ee1a9ec2-c8a5-4afe-8585-74df591f9990 with an empty request body will delete the order details of order "ee1a9ec2-c8a5-4afe-8585-74df591f9990".

The client code demonstrates how to send HTTP GET/POST/PUT/DELETE requests whereas the server code demonstrates how to build a RESTful endpoint through JAX-RS (JSR-311) APIs.







  • No labels