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 application 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 2 Platform, Enterprise Edition (J2EE) client and a Java API for XML-based remote procedure call (JAX-RPC) client.
Plants by WebSphere could support JavaBeans endpoints within the Web container by installing the Feature Pack for Web Services on top of the V6.1 product. The Feature Pack for Web Services is based on a new programming model called Java API for XML Web Services (JAX-WS). JAX-RPC client applications and JAX-WS client applications can be used in the same module.
Installing the Feature Pack for Web Services release not only supports JavaBeans endpoints, but a wealth of other new specifications, standards and components that simplify Web services development and implementation. For a complete list of supported and non-supported application-level features, see "What is new in the Version 6.1 Feature Pack for Web Services." For a complete list of specifications and standards that are supported, see the topic "Specifications and API documentation."
The Feature Pack for Web Services product makes it easy to configure and reuse configurations, so you can seamlessly incorporate new Web services profiles. And, the new 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.
The application powering the Web site checks the Plants by WebSphere inventory database. It discovers that the item is not in stock.
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.
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.
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).