1.The customer places an order on the
company web site, and an invoice is created as an XML form and submitted to
http://myfirm.com/orders.
2.The HTTP transport receives the XML
invoice and wraps it in a Mule message. The Customer Data service’s inbound
endpoint is set to http://myfirm.com/orders, and its inbound router specifies
that the message must contain a Java object, so the HTTP transport prepares to
transform the XML invoice and dispatch the message to the service.
3.The XML to Object transformer
converts the XML invoice into a Java object. Note that the next service and the
final application also expect Java objects, so no further transformers are used
in this scenario.
4.The transport passes the message
with its transformed payload to the Customer Data service.
5.The Customer Data service component
queries the master customer database to pull additional data about the customer
and updates the invoice with the data.
6.The HTTP transport uses the
outbound router configuration to determine that it must now dispatch the
message to http://myfirm.com/verify.
7.The HTTP transport uses the inbound
router configuration of the Inventory Verification service to receive the
message and pass it to the service component.
8.The service component updates the
invoice with an ID code of the warehouse that has all the items on the invoice
in stock.
9.The outbound endpoint specifies a
JMS address, so the JMS transport dispatches the message to the order
fulfillment application, which picks up orders on that address.
No comments:
Post a Comment