Scenario: Exchanging messages between a Job and a Route - 6.3

Talend Components Reference Guide

EnrichVersion
6.3
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for Data Quality
Talend Open Studio for ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
task
Data Governance
Data Quality and Preparation
Design and Development
EnrichPlatform
Talend Studio

This scenario describes how to accept messages from a Route using the tRouteInput component and send messages to a Route using the tRouteOutput component. To do this, we need to build a Job and a Route to call the Job using the cTalendJob component.

For more information about how to use the Mediation components, see Talend ESB Mediation Components Reference Guide.

Creating an Data Integration Job

In this section, we will build a Job named RouteCommunication to accept the message from a Route, change the message body and send the message back to the Route.

Dropping and linking the components
  1. Drag and drop a tRouteInput, a tLogRow, a tReplace and a tRouteOutput from the Palette onto the design workspace.

  2. Link the components using the Row > Main connection as shown above.

Configuring the components
  1. Double-click the tRouteInput component to open its Basic settings view in the Component tab.

  2. Click the three-dot button next to Edit Schema. In the schema dialog box, click the plus button to add a new line of String type and name it body. Click OK to close the dialog box.

  3. In the Simple Expression field for the body element, enter "${in.body}" to get the body of the input message from the Route.

  4. The tLogRow component will monitor the message exchanges and does not need any configuration.

  5. Double-click the tReplace component to open its Basic settings view in the Component tab.

  6. Click Sync columns to retrieve the schema from the tLogRow. In the pop-up dialog box, click Yes to propagate the schema to the subsequent component.

    Click [+] to add a row to the Search/Replace table. Enter World in the Search column and Talend in the Replace with column. Clear the Whole word check box.

  7. Double-click the tRouteOutput component to display its Basic settings view in the Component tab.

  8. Make sure that tRouteOutput has one element body. Set its type to Body.

  9. Press Ctrl+S to save your Job.

Creating a Mediation Route

In this section, we will create a Route to send a message to the Job and receive the message sent back to the Route.

Dropping and linking the components
  1. Drag and drop a cTimer, a cSetBody, a cTalendJob, and a cLog from the Palette onto the design workspace.

  2. Link the components with the Row > Route connection as shown above.

  3. Label the components for better identification of their roles.

Configuring the components
  1. Double-click the cTimer component to open its Basic settings view in the Component tab.

  2. In the Repeat field, enter 1 to generate the message exchange one time. Keep the default settings of the other options.

  3. Double click the cSetBody component to display its Basic settings view in the Component tab.

  4. Select Simple from the Language list and enter Hello World! in the Expression field.

  5. Double-click the cTalendJob component to display its Basic settings view in the Component tab.

  6. Select Job RouteCommunication from the repository.

  7. The cLog component will monitor the message exchanges and does not need any configuration.

  8. Press Ctrl+S to save your Route.

Executing the Route

Click the Run view to display it and click the Run button to launch the execution of your Route. You can also press F6 to execute it. In the execution log you can see that the message Hello World! is sent to the Job. The message body is changed to Hello Talend! and sent back to the Route.