Connecting to External Systems with Connectors and Adapters
Connecting to external systems with connectors and adapters
This domain tests how ACE reaches packaged applications and SaaS systems. Connectors provide request and input nodes for applications such as Salesforce, SAP, Workday, and ServiceNow; WebSphere Adapters provide similar access for SAP, Siebel, PeopleSoft, and JD Edwards business objects. The exam focuses on discovery, policy-based configuration, and transactional behavior.
Core rules
- Connector and adapter nodes are configured through policies in a policy project, not by embedding credentials in the message flow. The policy holds endpoint, authentication, and connection settings.
- Use connector discovery in the Toolkit to import object metadata and generate request or input node schemas. The discovered business object determines the message tree shape.
- Request nodes are synchronous or asynchronous calls from a flow; input nodes listen for events from the external system and start a flow. Choose based on whether ACE initiates or reacts.
- Understand transactionality: an external call may not participate in the same unit of work as MQ or a database. Design idempotency and compensation where needed.
- Connection pooling and timeout settings belong in policy or server configuration and must be sized for expected concurrency.
Worked example
A flow must retrieve a Salesforce account when an MQ message arrives. Add a Salesforce Request node, select the discovered Account object and retrieve operation, bind a policy containing OAuth credentials and the instance URL, map the account ID from the MQ message, and map the returned fields to the output. If Salesforce returns an error, route to a failure subflow that logs the correlation ID and sends the message to backout rather than retrying indefinitely.
Traps
Hardcoded credentials fail promotion and security review. Assuming an external SaaS call joins the MQ transaction causes duplicate processing. Using an input node when a request/reply is required creates an unnecessary event-driven design. Ignoring connector timeouts leaves flows hanging.