Scénario : Échanger des messages entre un Job et une Route - 6.1

Composants Talend Guide de référence

EnrichVersion
6.1
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
Création et développement
Gouvernance de données
Qualité et préparation de données
EnrichPlatform
Studio Talend

Ce scénario décrit comment échanger des messages entre un Job et une Route à l'aide des composants tRouteInput et tRouteFault. Pour ce faire, un Job est créé pour recevoir un message d'une Route et marquer le message comme Fault, en erreur. Une Route est construite pour envoyer le message au Job et gérer le message en erreur.

Pour plus d'informations concernant les composants Mediation, consultez le Guide de référence des Composants Mediation de Talend ESB.

Créer un Job d'intégration de données

Dans cette section, un Job nommé RouteCommunication_tRouteFault est construit dans la perspective Mediation du Studio.

Déposer et relier les composants
  1. Glissez-déposez un tRouteInput et un tRouteFault de la Palette dans l'espace de modélisation graphique.

  2. Cliquez-droit sur le tRouteInput, sélectionnez Row > Main dans le menu contextuel et cliquez sur le composant tRouteFault.

Configurer les composants
  1. Double-cliquez sur le tRouteInput pour ouvrir sa vue Basic settings.

  2. Cliquez sur le bouton [...] à côté du champ Edit Schema. Dans la boîte de dialogue du schéma, cliquez sur le bouton [+] pour ajouter une ligne de type String, que vous nommez body. Cliquez sur OK pour fermer la boîte de dialogue.

  3. Dans le champ Simple Expression de l'élément body, saisissez "${in.body}" pour obtenir le corps du message d'entrée de la Route.

  4. Double-cliquez sur le composant tRouteFault pour afficher sa vue Basic settings.

  5. Assurez-vous que le tRouteFault a bien un élément body. Configurez son type à Body.

  6. Appuyez sur les touches Ctrl+S afin de sauvegarder votre Job.

Créer une Route de Médiation

Dans cette section, passez en perspective Mediation et créez une Route pour envoyer un message au Job et gérer le message en erreur.

Glisser et relier les composants
  1. Glissez-déposez un cTimer, un cSetBody, un cJavaDSLProcessor, un cTalendJob, un cOnException et un cProcessor de la Palette dans l'espace de modélisation graphique.

  2. Reliez les composants à l'aide de liens Row > Route, comme dans la capture d'écran ci-dessus.

  3. Renommez les composants afin de mieux identifier leur rôle au sein de la Route.

Configurer les composants
  1. Double-cliquez sur le cTimer pour ouvrir sa vue Basic settings.

  2. Saisissez 1 dans le champ Repeat afin de déclencher une fois un échange de message.

  3. Double cliquez sur le cSetBody pour afficher sa vue Basic settings.

  4. Sélectionnez Simple dans la liste Language et saisissez Hello! dans le champ Expression.

  5. Double-cliquez sur le composant cJavaDSLProcessor pour ouvrir sa vue Basic settings.

  6. Saisissez .handleFault() dans le champ Code pour que le message en erreur soit pris en compte comme une exception.

  7. Double-cliquez sur le cTalendJob pour afficher sa vue Basic settings.

  8. Sélectionnez Repository, puis choisissez le Job RouteCommunication_tRouteFault afin d'appeler le Job créé dans la section précédente.

  9. Double-cliquez sur le composant cOnException pour afficher sa vue Basic settings.

  10. Cliquez sur le bouton [+] pour ajouter une ligne à la table Exceptions et saisissez org.apache.camel.CamelException dans le champ Exception pour gérer les exceptions.

  11. Double-cliquez sur le cProcessor pour afficher sa vue Basic settings.

  12. Personnalisez le code dans le champ Code pour afficher le corps du message :

    System.out.println(exchange.getIn());

  13. Appuyez sur les touches Ctrl+S afin de sauvegarder votre Route.

Exécuter la Route

Cliquez sur la vue Run pour l'afficher et cliquez sur le bouton Run pour démarrer l'exécution de la Route. Vous pouvez également appuyer sur F6 pour l'exécuter.

Le message Hello! est envoyé de la Route au Job et récupérée comme une exception :