Receiving MessageObjects
You use XI Adapter to receive MessageObjects as follows:
XI Adapter receives MessageObjects sent to you by your business partners through a PI/PO Server.
XI Adapter service that actually receives the requests is protected by a
webMethods Access Control List (ACL), so business partners must supply valid login credentials.
XI Adapter parses the MessageObjects and passes them to your backend systems through other
webMethods adapters.
If there are results,
XI Adapter receives them from your backend systems through the
webMethods adapters.
XI Adapter returns the results to the PI/PO Server, which forwards them to your business partners.
1. A business partner sends a MessageObject to a PI/PO Server. The MessageObject specifies the login credentials you specified for the receiver endpoint that identifies the task.
2. The PI/PO Server sends the MessageObject to the URL you provided for your XI Adapter.
Receiver endpoint from the MessageObject's message header.
Payload from the MessageObject.
Delivery mode of the MessageObject.
4. The inbound service receives payload and receiver endpoint, interacts with your backend system to process the task defined by the interface that is specified by the receiver endpoint.
5. The next step depends on whether the business partner sent the MessageObject synchronously or asynchronously, and on whether the task runs successfully.
If the business partner sent the MessageObject synchronously, the inboundMessageObject service
pub.xi.Router:inboundMessageObject returns a reply MessageObject to the PI/PO Server to send to the business partner.
If the task runs successfully, the reply MessageObject contains a message header and a payload. The payload was provided by the inbound service and contains the results of the task from your backend system.
If the task fails because a technical error occurred in the PI/PO environment or on your business system, the reply MessageObject contains a message header and an error header that contains information about the technical error.
If the task fails because an application error occurred on your business system, the reply MessageObject contains a Document Type that contains information about the application error.
If the business partner sent the MessageObject asynchronously, the inboundMessageObject service
pub.xi.Router:inboundMessageObject returns a reply MessageObject to the PI/PO Server to send to the business partner.
If the task runs successfully, the reply MessageObject contains a message header.
If the task fails because a technical error occurred in the PI/PO environment or on your business system, the reply MessageObject contains a message header and an error header that contains information about the technical error.
You can return results later using a separate response service.