Testing the REST Service

You can now test the REST service using the built-in tester and the Swagger UI.

    Procedure
  1. In the Project Explorer, expand the tibco.bw.sample.binding.rest.BookStore.application process and expand the Package Unit > Properties folder.
  2. Provide valid values for the application properties including a valid username, password, and database URL to connect to your PostgreSQL database if different from the default setting.
  3. Verify your JDBC connection.
    1. Expand the Resources folder in the Project Explorer for the tibco.bw.sample.binding.rest.BookStore process.
    2. Double-click JDBCConnectionResource.jdbsResource.
    3. In the JDBC Driver section of the window, click Test Connection to verify the connection. If you change the JDBC driver folder from the default, click Click Here to Set Preferences and set the JDBC driver folder to the folder where you downloaded PostgreSQL JDBC Driver.

  4. Click File > Save.
  5. In the Project Explorer, expand the Processes directory if it is not expanded and double-click MyBooks.bwp.
  6. Click Run > Debug Configurations.
  7. In the left-hand tree of the Debug Configuration wizard, expand BusinessWorks Application and select BWApplication.
  8. Click the Applications tab and then click the Deselect All button if you have multiple applications. Select the checkbox next to tibco.bw.sample.binding.rest.BookStore.application.
  9. Click Debug. This runs the sample in Debug mode.
    The Console view is opened and shows engine messages similar to: Started BW Application [tibco.bw.sample.binding.rest.BookStore.application:1.0].
  10. In the Console view, press Enter to display the prompt: <>@BWEclipseAppNode>
    Enter the OSGi command lrestdoc. This lists the Swagger UI URL as the discovery URL: [Application Name]: tibco.bw.sample.binding.rest.BookStore.application [Discovery Url]: http://localhost:7777/tibco.bw.sample.binding.rest.BookStore.application
  11. Open the Google Chrome browser.
  12. Open http://localhost:7777/tibco.bw.sample.binding.rest.BookStore.application
  13. Click Books or Events to see the operations. Click MyBooks to see the REST service operations you just added. For more information, see the section Testing the POST and GET Operations.

  14. Expand the Books and Events headers, and test out the operations as listed below.
Result

Click Books or Events in the Swagger UI to view the following operations for Books and Events:

Books

  • Post books
  • GET books
  • GET book by ISBN
  • PUT book by ISBN
  • DELETE book by ISBN

Events

  • POST Events
  • GET Events
  • GET Event by EventID
  • PUT Event by EventID
  • DELETE Event by EventID

GET books returns an output similar to the following:

{
  "Book": [
    {
      "isbn": "0061122416",
      "name": "The Alchemist",
      "description": "Every few decades a book is published that changes the lives of its readers forever. The Alchemist is such a book",
      "authorName": "Paul Coelho",
      "releaseDate": "2006-04-25",
      "vintage": true,
      "signed": true,
      "price": 11.9
    },
    {
      "isbn": "0071450149",
      "name": "The Power to Predict",
      "description": "How Real Time Businesses Anticipate Customer Needs, Create Opportunities, and Beat the Competition",
      "authorName": "Vivek Ranadive",
      "releaseDate": "2006-01-26",
      "vintage": false,
      "signed": true,
      "price": 15.999
    }
 ]    
}

GET books by ISBN returns an output similar to the following for ISBN 0061122416:

  {
      "isbn": "0061122416",
      "name": "The Alchemist",
      "description": "Every few decades a book is published that changes the lives of its readers forever. The Alchemist is such a book",
      "authorName": "Paul Coelho",
      "releaseDate": "2006-04-25",
      "vintage": true,
      "signed": true,
      "price": 11.9
    }