Table of Contents | ||||
---|---|---|---|---|
|
Introduction
This sample demonstrates how data can be exposed as REST resources through a data service and also how the service can be invoked in REST style.
...
Table of Contents | ||||
---|---|---|---|---|
|
About the sample
The sample data service ResourcesSample should be deployed using the instructions in Samples Setup section.
Database and service definitions
This sample scenario is based on a database which stores information about the products of an enterprise. There are separate queries/resources written for specific tasks of the products. Resources are defined in order to access data through REST calls. The resources implemented in the service are listed as followsbelow.
- Create Product - Use HTTP POST request to insert new products.
Resource Path : product - product
Resource Method : POST
- Update Product - Use HTTP PUT request to update product infomation.
Resource Path : product - product
Resource Method : PUT
- GET Product - Use HTTP GET request to retreive product infomation for a given product code.
Resource Path : product/{productCode}
Resource Method : GET
- Get All Products - Use HTTP GET request to get all the products.
Resource Path : products - products
Resource Method : GET - Delete Product - Use HTTP DELETE request to delete a given product from the database.
Resource Path : product/{productCode}
Resource Method : DELETE
See Data Services and Resources for details.
Building the sample
The sample data service ResourcesSample should be deployed using the instructions in Samples Setup.
Running the sample
The service can be invoked in REST-style via curl (http://curl.haxx.se). The following commands can be executed in using the command line to invoke each of the resources.
Create Product
. Code Block curl -X POST -d '<product><productCode>S10_100</productCode><productName>1969 Harley Davidson Ultimate Chopper</productName><productLine>Motorcycles</productLine><quantityInStock>7933</quantityInStock><buyPrice>48.81</buyPrice></product>' --header 'Content-Type: application/xml' http://localhost:9763/services/samples/ResourcesSample.HTTPEndpoint/product
Update Product
. Code Block curl -X PUT -d '<product><productCode>S10_100</productCode><productName>1969 Harley Davidson Ultimate Chopper</productName><productLine>Motorcycles</productLine><quantityInStock>8000</quantityInStock><buyPrice>48.81</buyPrice></product>' --header 'Content-Type: application/xml' http://localhost:9763/services/samples/ResourcesSample.HTTPEndpoint/product
GET Product
Code Block curl -X GET http://localhost:9763/services/samples/ResourcesSample.HTTPEndpoint/product/S10_100
Get All Products
Code Block curl -X GET http://localhost:9763/services/samples/ResourcesSample.HTTPEndpoint/products
Delete Product
Code Block curl -X DELETE http://localhost:9763/services/samples/ResourcesSample.HTTPEndpoint/product/S10_100