tJava

Composants Talend Open Studio Guide de référence

EnrichVersion
6.3
EnrichProdName
Talend Open Studio for Data Integration
Talend Open Studio for Data Quality
Talend Open Studio for Big Data
Talend Open Studio for MDM
Talend Open Studio for ESB
task
Gouvernance de données
Qualité et préparation de données
Création et développement
EnrichPlatform
Studio Talend

Fonction

Le tJava permet de saisir du code personnalisé afin de l'intégrer dans le programme Talend. Ce code est exécuté une seule fois.

Objectif

Le tJava permet d'étendre les fonctionnalités du Job Talend grâce au langage Java.

Propriétés du tJava

Famille de composant

Custom Code

 

Basic settings

Code

Saisissez le code Java que vous souhaitez exécuter. Pour plus d'informations concernant la syntaxe des fonctions Java spécifiques à Talend, consultez l'aide en ligne du Studio Talend dans le menu Help Contents > Developer Guide > API Reference.

Pour la référence Java complète, consultez http://docs.oracle.com/javaee/6/api/ (en anglais).

Advanced settings

Import

Saisissez le code Java permettant d'importer, si nécessaire, la librairie externe utilisée dans le champ Main code de l'onglet Basic settings.

 

tStatCatcher Statistics

Cochez cette case pour collecter les données de log au niveau du composant.

Global Variables

ERROR_MESSAGE : message d'erreur généré par le composant lorsqu'une erreur survient. Cette variable est une variable After et retourne une chaîne de caractères. Cette variable fonctionne uniquement si la case Die on error est décochée, si le composant a cette option.

Une variable Flow fonctionne durant l'exécution d'un composant. Une variable After fonctionne après l'exécution d'un composant.

Pour renseigner un champ ou une expression à l'aide d'une variable, appuyez sur les touches Ctrl+Espace pour accéder à la liste des variables. A partir de cette liste, vous pouvez choisir la variable que vous souhaitez utiliser.

Pour plus d'informations concernant les variables, consultez le Guide utilisateur du Studio Talend.

Utilisation

Ce composant est généralement utilisé en tant que sous-job à un seul composant.

Limitation

Il est nécessaire de connaître le langage Java.

Scénario : Imprimer le contenu d'une variable

Le scénario suivant est une simple démonstration de l'application possible du composant tJava. L'objectif de ce Job est d'imprimer les lignes traitées à l'aide d'une commande Java et des variables globales fournies dans le Studio Talend.

Construire le Job

  1. Cliquez et déposez les composants dans l'espace de modélisation : tFileInputDelimited, tFileOutputExcel, tJava.

  2. Connectez le composant tFileInputDelimited au tFileOutputExcel à l'aide d'une connexion de type Row Main. Le contenu du fichier .txt délimité sera transmis à un fichier de type XSL via cette connexion sans subir de transformation.

  3. Ensuite, connectez le composant tFileInputDelimited au composant tJava à l'aide d'un lien de type Trigger > On Subjob Ok. Ce lien met en place un séquençage ordonnant au tJava de se lancer à la fin du processus principal.

Configurer le composant d'entrée

  1. Définissez les paramètres du composant tFileInputDelimited dans l'onglet Basic settings de la vue Component. Le fichier d'entrée utilisé en exemple est un simple fichier texte à deux colonnes : Name (des noms de personnes) et leur Emails respectifs.

  2. Pour cet exemple, le schéma n'a pas été centralisé dans le référentiel, vous devez donc configurer manuellement le schéma de ces deux colonnes.

  3. Cliquez sur le bouton Edit Schema.

  4. Une boîte de dialogue vous demandant si vous souhaitez propager les modifications apportées apparaît, cliquez sur OK pour accepter la propagation. Ainsi, le schéma du composant tFileOutputExcel est automatiquement renseigné à partir du schéma du composant précédent. Vous n'aurez donc pas à définir le schéma de nouveau.

Configurer le composant de sortie

Paramétrez le fichier de sortie afin qu'il reçoive le contenu du fichier d'entrée sans modifications. Si le fichier n'existe pas déjà, il sera créé.

Dans cet exemple, dans le champ Sheet name, indiquez le nom de la feuille Excel, ici Email et la case Header est cochée pour indiquer que le fichier contient un en-tête.

Configurer le composant tJava

  1. Sélectionnez le composant tJava pour définir la commande Java à exécuter.

  2. Dans la zone Code, saisissez la commande suivante :

    String var = "Nb of line processed: ";
    var = var + globalMap.get("tFileInputDelimited_1_NB_LINE");
    System.out.println(var);

Dans cet exemple précis, utilisez la variable NB_Line. Pour accéder à la liste des variables globales, appuyez sur Ctrl + Espace de votre clavier et sélectionnez la variable globale correspondante.

Exécuter le Job

  1. Enregistrez le Job en appuyant sur Ctrl+S.

  2. Appuyez sur F6 pour l'exécuter.

Le contenu est donc transmis au fichier Excel spécifié et le nombre de lignes traitées est affiché dans la console Run.