Contents

Interface identity

Resources

Data types and constants

Error handling

Variability

Quality attribute characteristics

Rationale and design issues

Usage guide

Interface identity

This is a SOAP web service interface named OpcOrderTrackingService. The main purpose of this web service is to track the status of a purchase order with a given order id.

Resources

OrderDetails getOrderDetails(String orderId) 
Pre-conditions
Post-conditions
Usage restrictions

Data types and constants

PurchaseOrder PO
String status

The PurchaseOrder type is described in the OpcPurchaseOrderService interface documentation.

Error handling

The exceptions raised by this interface are:

Variability

N/A.

Quality attribute characteristics

Rationale and design issues

Java-to-WSDL approach for design of interface

Since both the consumer website and the order processing center reside in the same enterprise we prefer the ease of development provided by JavaToWsdl compiler over stability of a manually-maintained WSDL description. However, this may result in rewriting the clients of this service every time we make a change to this interface.

Usage guide

Context ic = new InitialContext();
OpcOrderTrackingService opcOrderTrackingSvc =
     (OpcOrderTrackingService) ic.lookup("java:comp/env/service/OpcOrderTrackingService");
OrderTrackingIntf port = (OrderTrackingIntf) opcOrderTrackingSvc.getOrderTrackingIntfPort();
OrderDetails orderDetails = port.getOrderDetails(orderId);