To define inbound triggers and outbound invokes:
To add a trigger connection to the integration canvas, click the + sign below START in the integration canvas or click on the right side of the canvas. Both options show a list of available trigger connections.
If the adapter connection you want to use does not exist, click the + sign in the Triggers section to create a new connection.
The Create Connection — Select Adapter dialog is displayed for selecting the connection. Once the adapter connection is configured, tested, and the message indicates that it is 100% complete, save and close the page. The new adapter connection is displayed in the panel. An Edit icon is also displayed to the right of the connection name for updates. If you edit the connection so that it is now not 100% complete, then save and close the Connections page, a message is displayed in the banner indicating that it is not 100% complete and cannot be displayed in the panel. For the connection to be displayed in the panel again, you must return to the Connections page and configure the connection to be 100% complete.
Add the configured adapter to the large + section within the circle in the integration canvas.
This invokes the Adapter Endpoint Configuration Wizard.
Complete the pages of the wizard to configure the selected adapter. For this example, an Oracle HCM Cloud Adapter is selected in which a request opportunity business object and a delayed response are configured. See Understand Trigger and Invoke Connections.
When complete, a configured trigger is displayed in the canvas. An unconfigured mapper icon is displayed in the middle. Because this trigger was configured to send a response, a return icon is displayed in green in the integration canvas. Green indicates that design is complete. You cannot delete a trigger in an integration (no delete option is available).
Description of the illustration integration_in_progress.png
Note:On the right side, the triggers icon is replaced by the invokes icon that enables you to add multiple outbound invoke connections to the integration.An icon is now displayed below . When expanded, this section displays the following options:
Assign: Enables you to assign variables to variables using the Expression Builder.
Callback: Enables you to end a process and return to the trigger. For example, you can add a switch activity and define a branch in which you add a Callback. If some defined expression logic is not met, this branch is taken. The integration is stopped and the trigger receives a response indicating that the integration is not continuing.
- EDI Translate: Translate a message to or from the Electronic Data Interchange (EDI) format in the integration. This action converts an EDI document into an Oracle Integration message, or vice versa.
For Each: Enables you to loop over a repeating element and execute one or more actions within the scope of the for-each action. The number of looping iterations is based on a user-selected repeating element.
- Integration: Invokes another integration from an orchestrated integration. When you drag this action into the integration, you are prompted to select an active integration to invoke.
Logger: Enables you to log messages to the activity stream and diagnostic logs by adding the logger action at any point in the integration. You can create a log message that is a static message or variable-populated message in the Expression Builder.
Map: Adds mappings to the integration, as needed. Mappings are also automatically added when you add triggers, invokes, and some actions to an integration. In most cases, the messages you transfer between applications in an integration have different data structures. Mappings enable you to define how is transferred, or mapped, between applications.
- Note: Adds placeholder notes similar to sticky notes to an integration. For example, you have not yet defined an invoke connection and want to add a placeholder note in the integration indicating that you plan to define the invoke connection later.
Notification: Enables you to send a notification email to relevant users at specific points in the execution of an integration. You can set the To, From, and Subject parts of an email. You can also create the body part of an email using parameters defined in the Expression Builder.
- Process: Invokes a process from an orchestrated integration. When you drag this action into the integration, you are prompted to select an application workspace and a process to invoke.
Return: Enables you to return an immediate response.
- Re-throw Fault: Sends failed messages to the error hospital for further analysis. If the integration contains a defined global fault, the error captured by the re-throw fault action is sent through the global fault and onto the error hospital for analysis. If no global fault is defined, the fault is sent.
Scope: Manages a group of actions. The scope action is a collection of child actions and invokes that can have their own fault handlers. The scope action provides the behavior context for the child elements. The elements defined in the parent scope have local visibility inside the scope.
Stage File: Enables you to process files in integrations. The stage file action can process each file downloaded by the FTP Adapter. The stage file action can read (and remove any trailer), write, zip, and unzip files in a stage integration known to Oracle Integration.
Switch: Defines branches to add routing expression in the integration. You define one or more branches. An otherwise branch is taken if the routing expressions for the initial branches do not resolve to true.
Stop: Enables you to terminate the integration. No response message is returned to the trigger.
- Throw New Fault: Generates an error and configure a code, reason, details, and skip condition for that error at a certain point during the execution of an integration.
Wait: Enables you to delay the execution of an integration for a specified period of time. A typical use for this action is to invoke a specific operation at a certain time.
While: Enables you to loop over actions or invoke connections as long as a specific condition is met. You define the condition for the while loop in the Expression Builder.
On the right side of the canvas, click to expand the panel. As with the trigger connection, you can click the + sign to create a new invoke connection and click the Edit icon to edit an existing connection. See Step 1 for information.
Click the adapter type to display the specific type and number of configured adapters.
Drag the specific configured adapter to the integration canvas. As you do, two large + sections within circles are displayed:
A section before the request mapper (this is similar to the enrichment feature that you can define in integrations that are not orchestrated).
A section after the request mapper.
Drop the adapter in the appropriate section. For this example, the invoke is added before the request mapper.
This invokes the Adapter Endpoint Configuration Wizard.
Complete the pages of the wizard to configure the selected adapter. For this example, an Oracle Engagement Cloud Adapter named Order with a selected business object is defined for a synchronous response. See Understand Trigger and Invoke Connections.
When complete, a configured invoke connection is displayed in the canvas.
You can click the trigger and invoke connections to edit or view their contents. If you re-edit the selected connection in the Adapter Endpoint Configuration wizard and click Done (even without making any changes) you are prompted to update the configuration and regenerate the artifacts.
If you select Yes after making only minor changes, the system validates the flow and displays the warnings and errors (if there are any ) so you can fix any potential problems.
If you select Yes after making major changes to the trigger connection (for example, changing the message exchange pattern of the trigger from synchronous to asynchronous), all mappings, replies, and stop elements are deleted from the orchestration except for the system-generated reply or stop at the end of the integration. Tracking information is also deleted.
Editing an invoke connection can also result in major change. However, the impact is minimal compared to editing a trigger. Invoke editing does not have flow-wide consequences such as with maps and other nodes being removed.
You can place your cursor anywhere in the canvas to move the integration as needed. You can also move the integration from within the large box in the upper right corner.
Receive Requests for Multiple Resources in a Single REST Adapter Trigger Connection
You can expose multiple entry points to a single orchestrated integration that uses the REST Adapter as the trigger connection. Each entry point can be configured with a different resource URI and HTTP action/verb, as necessary. This feature eliminates the need to create multiple integrations (each with a separate resource URI and verb) to perform different operations.
This feature is useful in the following scenarios:
- Supports multiple resource URIs and actions/verbs in a specific integration through the REST Adapter.
- Supports multiple integration patterns (for example, synchronous and asynchronous). The combination of a resource and a verb is called an operation. Each operation can be configured as a synchronous or an asynchronous one-way service. Asynchronous services accept the request and return immediately with an HTTP
This feature is only available when creating the App Driven Orchestration integration pattern.
To configure this feature in an orchestrated integration:
- Select to create an App Driven Orchestration integration pattern.
- Drag a REST Adapter into the canvas as a trigger connection.This invokes the Adapter Endpoint Configuration Wizard.
- On the Basic Info page, specify the following:
- Enter a name and optional description.
- Select the Select to configure multiple resources or verbs checkbox.
- On the Resource Configuration page, specify the operation name, the endpoint relative resource URI, and the action/verb to perform, then click Next.
- On the Operations page, click Add another operation to add another resource URI and action/verb, then click Next.
You are returned to the Resource Configuration page.
- On the Resource Configuration page, specify a different operation name, endpoint relative resource URI, and action/verb to perform, then click Next.
- Continue this process to add as many operations as necessary.
- On the Operations page, note that all operations are displayed. Each operation represents a different branch in a single integration. The maximum number of operations (branches) you can create in one integration is six.
- On the Summary page, review your selections, and click Done.For this example, there are three branches (CreateContact, GetContact, and UpdateContact).
- Place your cursor over each branch to show details about the operation/resource name, action/verb, and resource URI.
- Further configure your integration by dragging appropriate actions after each operation name. You cannot add actions between the REST Adapter icon and the operation name.
- Highlight the REST Adapter, and click the More Actions option to show a menu that lists all operation names.
- Click the operation name for which to define business identifier tracking variables.
- Set the tracking variables for each operation branch. Tracking variables are populated as per the operation. You must set primary tracking variable for all operations to activate the integration. If any branches are not configured with tracking variables, a red error icon is displayed on the node. Place your cursor over the error icon to show a detailed error message.
- Activate and invoke the integration to take the appropriate branch.Once activated, the adapter metadata page displays information corresponding to each of the configured resources and verbs.
The swagger displays all the configured resources and the verbs for each such resource. Just like swagger from a single resource REST trigger endpoint, you can use this swagger in another invoke connection to automatically discover and browse the resource implemented.
Note:You can edit the action in the integration to remove or add operation branches. This enables you to convert to and from a standard trigger-based integration with a single operation to an integration with multiple operation branches.