LogiCoy has implemented OTM with GPS [Global Positioning System] using OpenESB which is currently running in production.
How OTM integration is implemented using OpenESB?
Types of integration that we at LogiCoy have accomplished by sending data from OTM [outbound from OTM] with GPS using OpenESB is as follows:
- Driver master
- Truck Master
- Shipment Creation
- Shipment Closure
- Shipment Cancellation
Driver master:
Description:
When Shipments are created and need to be delivered,in OTM, the request contains is made to the webservice exposed by OpenESB application.An instance is created and initialized with the variable.Once done, we invoke external GPS SOAP webservice with the request parameter and response from GPS SOAP service is mapped to TransmissionAck [response to OTM].
Truck master:
Description:
When Shipments are created in OTM, before they actually go in execution (i.e. before planning into shipment in OTM), GPS will be initiated. OTM system will call the service and send the required message for GPS. The application will receive the request from OTM and call GPS service for Truck Master based on the TruckID code information received from PowerUnit Header [Xid value]OTM. Based on the response received from GPS system, the application will send status update information acknowledging the response.
Shipment Creation,Closure and Cancellation:
Description:
When Shipments are created in OTM, a request is made to the webservice exposed by OpenESB application.An instance is created and initialized with the variable.Once done, we invoke external GPS SOAP webservice with the request parameter and response from GPS SOAP service is mapped to TransmissionAck [response to OTM].
Similarly,when shipments are cancelled or delivered [shipment closure] a call will be made from OTM to GPS via an exposed OpenESB webservice URL.
The above mentioned integrations use XSLT so as to avoid Selection Failure Exception.
XSLTransformation is used when the input contains empty elements which are being assigned to the target.
Error Handling in OpenESB:
Error handling is an integral part while designing OpenESB applications as OpenESB applications integrate heterogeneous IT systems across the organizational boundaries, vendor and partner IT assets. Focusing on error handling analysis early in the analysis and design phases ensures that appropriate error handling standards/guidelines are put in place for modules in different platforms.
Error reporting BPEL process flow:
The catch block of BPEL Interpreter’s execute method is the central point where all exceptions are caught and converted to BPEL faults. A BPEL fault needs to have a fault name (name) and data.
Types of Catch Statements used for the above integrations:
SystemException
SelectionFailureException
CatchAll