+

Search Tips   |   Advanced Search

Web services scenario: Static inquiry on supplier


In this scenario, an online supply retailer turns an application into a Web service for checking the inventory of its main supplier.

Plants by WebSphere is an Internet storefront that sells plants and gardening supplies. The company realizes that its existing Web app can be "wrapped" with Web services programming interfaces. For example, the BackOrderStock session bean can be turned into a SOAP Web services client that interacts with a Supplier Web services application located at the supplier. Specifically, the BackOrderStock session bean functionality is turned into a Web Services for Java EE client and a Java API for XML-based remote procedure call (JAX-RPC) client.

The appserver supports Web services based on the JAX-WS and JAX-RPC models. JAX-WS is a new model that simplifies application development through support of a standard, annotation-based model to develop Web services applications and clients. A JAX-RPC client and JAX-WS client can be used in the same module, therefore the online retailer is still able to use its JAX-RPC applications. The appserver makes it easy to configure and reuse configurations, so we can seamlessly incorporate new Web services profiles. The JAX-WS standards support interoperable and reliable Web services applications. The online retailer can send messages asynchronously, which means that the messages can communicate reliably even if one of the parties is temporarily offline, busy, or not available. By using these new technologies, the online retailer can be confident that its communication is reliable and reaches its destination while interoperating with other vendors.

 

How out of stock items are handled

The following events happen when a customer on the Plants by WebSphere site orders an item not available according to the Plants by WebSphere inventory:

  1. Plants by WebSphere checks its own inventory.

    The application powering the Web site checks the Plants by WebSphere inventory database. It discovers that the item is not in stock.

  2. Plants by WebSphere uses a Web service to check the supplier inventory.

    The application invokes a SOAP client that communicates with a SOAP server at the supplier site to ascertain whether the supplier has the item in stock. The supplier data is sent to Plants by WebSphere.

  3. Plants by WebSphere either obtains the out of stock item, or does not.

    If the supplier indicates that the item is in stock, the application powering Plants by WebSphere determines whether to order the item on behalf of the customer. The exchange of data can include checking a price threshold above which Plants by WebSphere will not order the wholesale item. It could also include decision-making information such as how long the supplier requires to deliver the item, or a date that the manufacturer plans to discontinue the item.

  4. Plants by WebSphere notifies its customer of the outcome, as soon as possible.

    If the supplier can be consulted quickly enough, Plants by WebSphere does not have to bother its customer with concerns about availability. It simply confirms that the item is available, as though the item is in stock at Plants by WebSphere. If the supplier inventory temporary lacks the item, or Plants by WebSphere opted not to order the item from the supplier, Plants by WebSphere can issue an appropriate response to the customer.

See the Samples Gallery for details about the GreenhouseByWebSphere application, a business to business (B2B) application that uses a message-driven bean (MDB), a stateless session bean, and Java message service (JMS).

 

Web services technologies used in this scenario

This scenario uses the following Web services technologies.

XML (Extensible Markup Language)

XML is used to standardize the exchange of data between Plants by WebSphere and its supplier.

Web Services for Java EE

Web Services for Java EE, also known as JSR-109, defines how Java EE applications create and access Web services.

JAX-RPC

JAX-RPC, also known as JSR-101, defines how Java applications access Web services.

JAX-WS

The JAX-WS model simplifies application development through support of a standard, annotation-based model to develop Web services applications and clients. The JAX-WS model is the successor to the JAX-RPC 1.1 model. The appserver supports both the JAX-WS and JAX-RPC models.

WSDL (Web Services Description Language)

WSDL is used to turn the existing application into a Web service, by acting as the interface between the underlying application and other Web-enabled applications.

SOAP

SOAP is the protocol by which the Web service communicates with the supplier over the Internet.




Related concepts


Overview: Online garden retailer Web services scenarios
Web services scenario: Dynamic inquiry on supplier
Web services scenario: Cross supplier inquiry

 

Related tasks


Task overview: Implementing Web services applications

 

Related


Web services specifications and APIs

 

Related information


Samples page on IBM site