You are on page 1of 118

Talend ESB

Guide de prise en main

5.6.2
Talend ESB

Date de publication : 12 mai 2015


Copyright 2011-2015 Talend SA. Tous droits rservs.

Copyleft
Cette documentation est mise disposition selon les termes du Contrat Public Creative Commons (CPCC).
Pour plus d'informations concernant votre utilisation de cette documentation en accord avec le Contrat CPCC,
consultez : http://creativecommons.org/licenses/by-nc-sa/2.0/

Ce document peut contenir de la documentation produite par The Apache Software Foundation, sous licence
Apache 2.0.

Mentions lgales
Talend et Talend ESB sont des marques dposes de Talend, Inc.

Apache CXF, CXF, Apache Karaf, Karaf, Apache Cellar, Cellar, Apache Camel, Camel, Apache Maven, Maven,
Apache Archiva, Archiva, Apache Syncope, Syncope, Apache ActiveMQ, ActiveMQ, Apache Log4j, Log4j,
Apache Felix, Felix, Apache ServiceMix, ServiceMix, Apache Ant, Ant, Apache Derby, Derby, Apache Tomcat,
Tomcat, Apache ZooKeeper, ZooKeeper, Apache Jackrabbit, Jackrabbit, Apache Santuario, Santuario, Apache
DS, DS, Apache Avro, Avro, Apache Abdera, Abdera, Apache Chemistry, Chemistry, Apache CouchDB,
CouchDB, Apache Kafka, Kafka, Apache Lucene, Lucene, Apache MINA, MINA, Apache Velocity, Velocity,
Apache FOP, FOP, Apache HBase, HBase, Apache Hadoop, Hadoop, Apache Shiro, Shiro, Apache Axiom,
Axiom, Apache Neethi, Neethi, Apache WSS4J, WSS4J sont des marques dposes de The Apache Foundation.
Eclipse Equinox est une marque dpose de The Eclipse Foundation, Inc. SoapUI est une marque dpose de
SmartBear Software. Hyperic est une marque dpose de VMware, Inc. Nagios est une marque dpose de Nagios
Enterprises, LLC.

Tous les autres noms de marques, de produits, les noms de socits, les marques de commerce et de service sont
la proprit de leurs dtenteurs respectifs.

Ce produit comprend les logiciels dvelopps par AOP Alliance (Java/J2EE AOP standards), ASM, AntlR, Apache
ActiveMQ, Apache Ant, Apache Avro, Apache Axiom, Apache Axis, Apache Axis 2, Apache Batik, Apache
CXF, Apache Camel, Apache Chemistry, Apache Common Http Client, Apache Common Http Core, Apache
Commons, Apache Commons Bcel, Apache Commons JxPath, Apache Commons Lang, Apache Derby Database
Engine and Embedded JDBC Driver, Apache Geronimo, Apache Hadoop, Apache Hive, Apache HttpClient,
Apache HttpComponents Client, Apache JAMES, Apache Log4j, Apache Lucene Core, Apache Neethi, Apache
POI, Apache Pig, Apache Qpid-Jms, Apache Tomcat, Apache Velocity, Apache WSS4J, Apache WebServices
Common Utilities, Apache Xml-RPC, Apache Zookeeper, Box Java SDK (V2), CSV Tools, DataStax Java Driver
for Apache Cassandra, Ehcache, Ezmorph, Ganymed SSH-2 for Java, Google APIs Client Library for Java, Google
Gson, Groovy, Guava: Google Core Libraries for Java, H2 Embedded Database and JDBC Driver, HsqlDB,
Ini4j, JClouds, JLine, JSON, JSR 305 : Annotations for Software Defect Detection in Java, JUnit, Jackson Java
JSON-processor, Java API for RESTful Services, Jaxb, Jaxen, Jettison, Jetty, Joda-Time, Json Simple, MetaStuff,
Mondrian, OpenSAML, Paraccel JDBC Driver, PostgreSQL JDBC Driver, Resty : A simple HTTP REST client
for Java, Rocoto, SL4J : Simple Logging Facade for Java, SQLite JDBC Driver, Simple API for CSS, SshJ, StAX
API, StAXON - JSON via StAX, Talend Camel Dependencies (Talend), The Castor Project, The Legion of the
Bouncy Castle, W3C, Woden, Woodstox : High-performance XML processor, XML Pull Parser (XPP), Xalan-
J, Xerces2, XmlBeans, XmlSchema Core, Xmlsec - Apache Santuario, Zip4J, atinject, dropbox-sdk-java : Java
library for the Dropbox Core API, google-guice. Fournis sous leur licence respective.
Table des matires
chapitre 1. Introduction aux solutions ESB de Talend ...................................................... 1
1.1. Fonctionnalits de l'ESB de Talend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1. Support des services Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.2. Conteneur d'excution OSGi standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.3. Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.4. Studio Talend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2. Produits et architecture de l'ESB de Talend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2.1. Talend ESB Standard Edition (SE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.2. Talend Open Studio for ESB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.3. Talend Enterprise ESB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2.4. Plateformes Talend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
chapitre 2. Prise en main de la solution ESB de Talend .................................................. 13
2.1. Prrequis l'utilisation des produits ESB de Talend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2. Tlchargement et installation du logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2.1. Produits communautaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2.2. Produits Enterprise et Platform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3. Crer un conteneur de remplacement pour les dmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4. Dmarrer le logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4.1. Dmarrer Talend Runtime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4.2. Dmarrer Talend Administration Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.4.3. Dmarrer le Studio Talend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4.4. Dmarrer les tableaux de bord ESB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.5. Prrequis logiciels pour les dmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
chapitre 3. Cas d'usage : dploiements et excutions simples ........................................... 29
3.1. Construction et dploiement des Services de donnes et des Routes l'aide du Studio . . . . . . . . . . . . . . . . . . . . 30
3.1.1. Construire un service de donnes simple SayHello . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.1.2. Accder aux vnements dans les Dashboards ESB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.1.3. Exemple SayHelloRoute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.2. Construction et dploiement de Services REST dans le Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.2.1. Construire un service REST simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.2.2. Dployer le Service REST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.2.3. Construire un consommateur de Service REST simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.2.4. Accder aux vnements dans les Dashboards ESB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.3. Construction et dploiement de Services de donnes et Routes l'aide de Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.3.1. Dmo Rent-a-Car . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.3.2. Dployer la dmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
3.3.3. Excuter la dmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
3.3.4. Dsinstaller la dmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
3.4. Import de la dmo Java Rent-a-Car dans Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
3.4.1. Construire les fichiers du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
3.4.2. Importer dans Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
3.4.3. Excuter les exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
chapitre 4. Utilisation avance du dploiement et de l'excution des Services et
gouvernance SOA ....................................................................................................... 91
4.1. Dmo Rent-a-Car utilisant Service Locator et Service Activity Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.1.1. Installer et dmarrer Service Locator et Service Activity Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.1.2. Dsinstaller les Features prcdentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
4.1.3. Construire la dmo avec les modules Service Activity Monitoring et Service Locator activs . . . . . . . . . 94
4.1.4. Installer les Features des exemples Rent-a-Car . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
4.1.5. Excuter la dmo dans un conteneur pour gnrer des donnes de Service Activity Monitoring . . . . . . . 96
4.1.6. Excuter la dmo dans deux conteneurs - simuler un failover de serveur avec Service Locator . . . . . . . . 98
4.1.7. Accder aux vnements dans les Dashboards ESB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
4.1.8. Dsinstaller les Features de la dmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.2. Dmo Rent-a-Car utilisant Security Token Service pour fournir une authentification WS-Security
base SAML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.2.1. Configurer l'enregistrement des logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.2.2. Construire la dmo avec la scurit active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
4.2.3. Dsinstaller les Features de la dmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
4.3. Dmo Rent-a-Car utilisant Artifact Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
4.3.1. Tlcharger et installer Nexus Artifact Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.3.2. Publier la dmo dans Artifact Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.3.3. Dployer la dmo dans Talend ESB Standard Edition avec Nexus Artifact Repository . . . . . . . . . . . . . . 107
4.3.4. Dployer la dmo dans Talend Runtime partir de Talend Administration Center . . . . . . . . . . . . . . . . . . . 107
4.4. Utilisation de XKMS avec la dmo Rent-a-Car . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
4.4.1. Configurer le service XKMS pour la dmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
4.4.2. Construire l'exemple de la dmo Rent-a-Car . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
4.5. Accder aux logs des vnements ESB dans Talend Administration Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

Guide de prise en main de Talend ESB


Guide de prise en main de Talend ESB
Chapitre 1. Introduction aux solutions ESB
de Talend
L'ESB (Enterprise Service Bus) a toujours t la pierre angulaire des vendeurs d'architectures orientes services
(SOA). L'ESB de Talend dpasse considrablement les prcdents ESB. Ses points forts sont les suivants :

une empreinte faible,

l'utilisation de technologies open source ayant fait leurs preuves,

l'intgration facile des applications et infrastructures existantes.

Ce chapitre donne une vue d'ensemble des solutions ESB de Talend, de leurs composants et fonctionnalits. Parmi
ces fonctionnalits se trouvent Talend Runtime (un conteneur OSGi), le support des services Web et le Studio
Talend.

Ce chapitre dcrit galement les packages disponibles et dtaille l'architecture de chacun d'entre eux.

Guide de prise en main de Talend ESB


Fonctionnalits de l'ESB de Talend

1.1. Fonctionnalits de l'ESB de Talend


L'ESB de Talend est un ESB flexible et polyvalent permettant aux entreprises de faire face toutes sortes de dfis
d'intgration. Il supporte nativement un large ventail de protocoles et de transports standards, ainsi que les EIP, un
ensemble commun de descriptions de bonnes pratiques dveloppes pour concevoir des solutions plus efficaces.
Disponible dans diffrents packages, l'ESB de Talend est ouvert et bas sur des standards afin dassurer une large
interoprabilit avec les composants dinfrastructure prexistants.

Talend investit, promeut et nourrit la technologie sous-jacente de la solution ESB de Talend via sa participation
la Apache Software Foundation (ASF), une communaut open source de pointe, reconnue pour sa transparence
et sa capacit mettre disposition des logiciels open source de niveau Entreprise, conus et dvelopps par une
large communaut d'utilisateurs. De plus en plus, contrairement aux fournisseurs de logiciels propritaires, les
communauts open source guident la nouvelle gnration dinnovations.

En utilisant les projets open source dintgration Apache CXF, Apache Camel et Apache ActiveMQ, la solution
ESB de Talend rend lintgration de niveau Entreprise accessible grce son rapport qualit/prix et la simplicit
dintgration et dextension des systmes et des applications.

Apache CXF, un framework de services open source, aide les entreprises crer et dvelopper des services laide
dAPI de programmation front-end telles que JAX-WS et JAX-RS.

Apache Camel est un puissant framework dintgration qui vous permet dutiliser les EIP pour limplmentation
de rgles de routage, de transformation et de mdiation.

Base sur la technologie Apache ActiveMQ, la solution de messaging JMS open source est la plus populaire.
Chaque agent de message peut traiter de nombreuses connexions tout en assurant le traitement de milliers de
messages par seconde.

1.1.1. Support des services Web


L'ESB de Talend vous permet de crer de nouveaux services Web ou de rendre accessibles via un service Web
vos applications et interfaces existantes pour une utilisation sur le Web. Les dveloppeurs utilisent une approche
dclarative et oriente politiques de scurit afin de permettre diffrentes qualits de services via la configuration
plutt que via le code. L'ESB de Talend tire parti des fonctionnalits de Apache CXF pour le dveloppement et
le dploiement de services Web et d'applications REST.

Apache CXF fournit une architecture lgre et modulaire supporte par le framework frquemment utilis, Spring
Framework. Cela fonctionne avec votre application, quelle que soit la plateforme sur laquelle il s'excute. Il peut
tre excut :

comme application Java standalone ;

comme partie d'un moteur de servlet (comme Tomcat) ;

comme bundle OSGi dans un conteneur OSGi (comme Talend Runtime) ;

Apache CXF supporte tous les standards importants des services Web et est totalement compatible avec les
spcifications de l'API Java pour les services Web XML (JAX-WS). Le langage JAX-WS dfinit les annotations
vous permettant de prciser un outil comme CXF comment votre application Java standalone doit tre reprsente
dans le contexte des services Web. Il existe deux types de dveloppement de services Web avec CXF :

1. Dveloppement de type "contract-first" :

Les WSDL dfinissent quelles oprations et quels types fournit un service Web. Cela est souvent appel
contrat de services Web et, pour communiquer avec un service Web, vous devez remplir les clauses du contrat.
Les dveloppements de type "contract-first" signifient que vous commencez par crire un fichier WSDL

2 Guide de prise en main de Talend ESB


Conteneur d'excution OSGi standard

(manuellement ou via un outil), puis que vous gnrez une implmentation d'une classe Java stub partir du
fichier WSDL, l'aide d'un outil comme CXF.

2. Dveloppement de type "code-first" :

L'autre mthode de dveloppement de services Web consiste crer le service sous forme de classe Java et
laisser le framework du service Web grer la gnration d'un contrat WSDL. Cette mthode est plus simple,
mais cela signifie que l'outil (CXF dans ce cas) a le contrle sur ce que sera le contrat. Si vous souhaitez adapter
votre fichier WSDL, il est conseill d'utiliser l'approche "contract-first".

Apache est certifi et test pour fonctionner avec un large ensemble de vendeurs d'implmentations de services
Web. Les utilisateurs tirent parti de ces tests d'interoprabilit, ce qui rduit le cot global et la complexit de
l'intgration d'applications.

L'ESB de Talend supporte la cration de services Web SOAP et REST et offre les meilleures fonctionnalits WS-*
du march, notamment le support de WS- Addressing, WS-Reliable Messaging et WS-Security, pour les transports
HTTP et JMS.

La diversit des services Web dans les distributions de la solution ESB de Talend s'tend au del de Apache CXF,
avec le support :

de conteneurs OSGi ainsi que d'exemples illustratifs et de la documentation,

de dveloppement de services de donnes graphiques, l'aide du Studio Talend,

de gouvernance avance de services l'aide de politiques de dclenchement temporel de dploiement de


services,

d'options de configuration et de dploiement centraux via des interfaces Web et des API bases JMX,

de gestion et monitoring des services.

1.1.2. Conteneur d'excution OSGi standard


Le conteneur d'excution standard de la solution ESB de Talend est un conteneur OSGi. L'implmentation OSGi
embarque avec l'ESB de Talend est Apache Karaf, utilisant Eclipse Equinox comme moteur OSGi et fournissant
un conteneur lger dans lequel de nombreux composants et applications peuvent tre dploys.

Figure 1.1. Vue d'ensemble des composants Karaf

Karaf supporte les fonctionnalits suivantes :

Dploiement automatique : Karaf monitore tous les fichiers du rpertoire [home]/deploy (par exemple les
fichiers XML permettant de crer un pool de connexions une base de donnes, des fichiers Jar et Kar pour des
pilotes, entre autres). Si un fichier est copi dans ce rpertoire, il est automatiquement install dans le conteneur
d'excution. Il peut tre mis jour ou supprim et Karaf agit en consquence.

Guide de prise en main de Talend ESB 3


Messaging

Configuration dynamique : les services sont gnralement configurs via un service OSGi standard, l'aide de
fichiers de proprits, monitors. Les modifications sont propages au service.

Log : utilisation d'un back-end de log centralis support par Log4J.

Gestion des instances : Karaf fournit des commandes de console simples pour grer plusieurs instances.

Consultez Construction et dploiement de Services de donnes et Routes l'aide de Java pour un exemple
d'utilisation de Karaf. Pour plus d'informations, consultez le Guide Talend ESB Container Administration Guide
et le site Web http://karaf.apache.org/ (en anglais).

1.1.3. Messaging
Les logiciels de messaging d'entreprise ont t utiliss pour des projets d'intgration pendant plus de trente ans.
Le messaging est un style de communication entre applications, mais est galement un style largement adopt
d'intgration entre applications. Le messaging rpond aux besoins de notifications et d'interoprations asynchrones
couplage faible entre les applications.

L'ESB de Talend embarque le broker de messages Apache ActiveMQ pour supporter un grand nombre d'options
de messaging diffrentes. ActiveMQ est crit en Java et implmente des spcifications JMS. De nombreuses
fonctionnalits sont galement ajoutes afin de fournir une haute disponibilit et des performances leves. Elles
apportent galement volutivit, fiabilit et scurit pour le messaging d'entreprise.

Le broker de messages transporte les vnements entre les applications distribues, garantissant ainsi qu'ils
atteignent la destination attendue. Le broker doit donc tre hautement disponible, performant et volutif. Apache
ActiveMQ simplifie cette tche dans l'ESB de Talend en embarquant le broker dans Talend Runtime.

1.1.4. Studio Talend


Le Studio Talend fournit un outil graphique de dveloppement comprenant :

une perspective Integration,

une perspective Mediation,

une perspective Java (les studios Enterprise et Platform comprennent le plug-in m2eclipse),

une perspective soapUI (studios Enterprise et Platform uniquement).

Ces perspectives sont dtailles dans la suite de la section.

1.1.4.1. Perspective Integration


La perspective Integration est un outil graphique inclus dans le Studio Talend, vous permettant d'utiliser une
longue liste de composants qui s'adaptent toutes les sources de donnes et de composants pour construire des
services de donnes ESB et les exporter pour un usage en standalone ou pour un dploiement dans le conteneur
de Talend Runtime local. Les studios Enterprise et Platform permettent galement de publier des services dans
un rfrentiel d'artefacts (Provisioning Repository) pour dploiement distant depuis Talend Administration
Center. La perspective Integration permet le dveloppement de services de donnes via un environnement de
dveloppement graphique simple utiliser. Cette perspective permet des dploiements rapides et la rduction des

4 Guide de prise en main de Talend ESB


Studio Talend

cots de maintenance, grce des connecteurs prconstruits permettant de vous connecter tous les systmes
source et cible, avec le support de tous les types d'oprations de services de donnes, de migration de donnes
et de synchronisation de donnes.

Le cur de la perspective Integration comprend quatre applications principales (Business Modeler, Job Designer,
Service Designer et Metadata Manager) en un seul environnement graphique de dveloppement bas Eclipse.

Figure 1.2. La perspective Integration ouverte sur un Service

Un Service dans le nud Services est un service Web dfini par un WSDL. Le WSDL peut tre cr partir de rien
directement dans le studio en utilisant l'diteur graphique WSDL embarqu, ou il peut tre import puis modifi
via ce mme diteur. Dans ce cas, le Service est cr partir des informations de ce WSDL et chaque opration
de ce service peut tre implmente dans le nud Job Design.

Figure 1.3. La perspective Integration ouverte sur un Job Design

Guide de prise en main de Talend ESB 5


Studio Talend

Un Job de service de donnes est un processus graphique, comprenant un composant ou plusieurs relis les uns
aux autres, vous permettant de configurer et d'excuter des oprations de services de donnes. Les Jobs prennent
en charge toutes les sources et cibles ncessaires vos processus d'intgration de donnes et les combinent aux
services Web.

De plus, dans les studios Enterprise et Platform, vous pouvez utiliser le rfrentiel partag afin de travailler en
quipe et partager les ressources. Ces studios facilitent le travail d'quipe - les membres d'une quipe peuvent
stocker et partager leurs Business Models, leurs Jobs d'intgration et de services, leurs services d'intgration et leurs
mtadonnes dans un gestionnaire de sources standard (SVN). Ceci simplifie la rutilisabilit des objets et du code
et facilite la cration des bonnes pratiques de dveloppement. Ces studios intgrent galement des fonctionnalits
amliorant la productivit, comme les assistants (par exemple, pour SAP) et les options de dploiement (Publish
to artifact repository).

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

1.1.4.2. Perspective Mediation


Cette section traite de Apache Camel ainsi que de la perspective Mediation, qui est l'interface graphique de cette
fonctionnalit.

Apache Camel

La fonctionnalit de Mdiation de la solution ESB de Talend se base sur le projet renomm Apache Camel. Le
cur du framework Camel est un moteur de routage. Il vous permet de dfinir des rgles de routage acceptant et
envoyant des messages travers les Composants. Il n'y a aucune restriction sur le format du message, par exemple
des objets Java, du XML, JSON, du texte brut, etc. peuvent tre utiliss. Ces rgles de routage se basent sur le
livre Enterprise Integration Patterns de Gregor Hohpe et Bobby Woolf (coll).

Apache Camel est un framework permettant aux dveloppeurs d'assembler des Endpoints / Processors en
workflows (Routes) afin d'obtenir des fonctionnalits de plus haut niveau. Il simplifie l'intgration d'applications
en tirant parti des EIP (Enterprise Integration Patterns) pour assembler des services volutifs et simplifier la
conception et l'implmentation de l'intgration de systmes bass messages. Camel est un framework Java open
source vous permettant d'utiliser des EIP standards, d'implmenter des rgles de routage et de mdiation l'aide du
langage DSL bas Java (Domain Specific Language). Cela signifie que vos rgles de routage compltes peuvent
facilement et rapidement tre mises jour si des modifications sont ncessaires.

Les EIP et Camel sont centrs sur les modles de messaging asynchrones car ces modles sont ncessaires
l'volutivit. Cependant, le messaging asynchrone est plus complexe. Camel embarque cette complexit dans un
framework commun largement compris par les dveloppeurs d'intgration.

Camel contenant des interfaces abstraites (par exemple, Message, Exchange, Component, Endpoint), il permet
d'utiliser les mmes API pour interagir avec diffrents systmes. Par exemple, chaque route implmente des API
de type Composant et Endpoint et fonctionne avec la mme structure simple de Message et Exchange. Chaque
composant est implment de manire fonctionner avec des protocoles et des types de donnes spcifiques.
Vous pouvez donc relier facilement les diffrents protocoles et systmes tout en utilisant la mme smantique des
modles et de routage.

Camel sert transformer des formats de messages et les transporter entre les diffrents endpoints. Cela permet
aux Services de communiquer avec les autres, via la mdiation Camel, mme s'ils utilisent diffrents formats de
messages et qu'ils sont crits dans diffrents langages. Cela rend simple l'ajout de fonctionnalits de log et de suivi.
Camel est trs lger et peut tre embarqu ou dploy o vous le souhaitez, comme dans une application Java
standalone, une application Web ou un bundle OSGi.

Vous pouvez utiliser le langage Java DSL (Domain Specific Language) pour spcifier une route. Par exemple :

From(file:directory).to(jms:queuename)

6 Guide de prise en main de Talend ESB


Produits et architecture de l'ESB de Talend

Cette instruction simple interroge les fichiers d'un rpertoire et envoie leur contenu en tant que message JMS vers
une file JMS. Cela est possible grce l'interface uniforme de Camel base sur l'objet Exchange. Camel est un
outil trs utile et trs puissant car il prend en charge de nombreux formats de donnes et convertit leurs types pour
des transformations de messages simples et automatiques. Il peut galement tre utilis pour extraire, transformer
et charger le contenu de ces fichiers.

Perspective Mediation

Le Route Builder utilise Camel (perspective Mediation), intgr dans le Studio Talend, qui est une interface
graphique permettant un dveloppeur de construire ses Routes de manire graphique.

Vous pouvez excuter les Routes en mode standalone ou les exporter en tant que bundles OSGi pouvant tre
facilement dploys dans le conteneur de Talend Runtime. De plus, dans les studios Enterprise et Platform, vous
pouvez utiliser la fonctionnalit de rfrentiel partag afin de travailler avec une plus grande quipe.

Figure 1.4. La perspective Mediation

Nativement, la solution ESB de Talend supporte plus de 80 protocoles et types de donnes, via sa bibliothque
de composants trs fournie. Ces composants permettent aux Routes de se connecter aux transports, d'utiliser des
API et de comprendre les formats de donnes. La Palette des composants est trs concise. L'ESB de Talend a une
architecture modulaire, qui permet tous les composants d'tre chargs dans Camel, qu'ils soient embarqus avec
Camel, d'une entreprise tierce ou votre propre cration. La cration de vos propres composants (par exemple, pour
traitement, connectivit, routage, etc) est simple et bien documente.

1.2. Produits et architecture de l'ESB de


Talend
Au del de la fonctionnalit standard comprise dans les projets Apache, Talend fournit une fonctionnalit ESB
dans quatre packages diffrents adapts vos besoins prsents et futurs. Ces packages sont dcrits dans les
sections suivantes. Pour une comparaison rapide de ces produits ESB, consultez la Matrice de comparaison des
fonctionnalits ESB en ligne.

Guide de prise en main de Talend ESB 7


Talend ESB Standard Edition (SE)

1.2.1. Talend ESB Standard Edition (SE)


Talend ESB Standard Edition est une couche de connectivit base sur des standards et utilise pour intgrer des
systmes distribus par-del les limites fonctionnelles, organisationnelles et gographiques de lentreprise. Les
fonctionnalits incluent le messaging, les services Web, le routage intelligent et les transformations de donnes.
Son architecture modulaire lui permet de se connecter diffrents systmes et se dveloppe facilement pour
s'adapter la plupart des besoins des entreprises. Il est disponible sous licence open source Apache. Il comprend
galement les fonctionnalits de niveau entreprise suivantes :

Service LocatorTalend ESB Standard Edition fournit les fonctionnalits de failover et de rpartition de charge
via une extension d'Apache CXF nouvellement dveloppe permettant l'enregistrement dynamique d'endpoints
et la recherche d'endpoints en cas de failover via Apache Zookeeper.

Pour plus d'informations, consultez Dmo Rent-a-Car utilisant Service Locator et Service Activity Monitoring
ainsi que le Guide Talend ESB Infrastructure Services Configuration Guide (en anglais).

Service Activity MonitoringGrce la capture d'vnements et au stockage des informations d'activit, Talend
ESB Standard Edition simplifie l'analyse en profondeur des activits de services, notamment les temps de
rponse des services, les modles de trafic, le cycle de vie des services et l'audit.

Pour plus d'informations, consultez Dmo Rent-a-Car utilisant Service Locator et Service Activity Monitoring
ainsi que le Guide Talend ESB Infrastructure Services Configuration Guide (en anglais).

Framework Security Token Service (STS)Talend ESB Standard Edition comprend un framework STS
supportant le langage Security Assertion Markup Language (SAML 2.0) pour rassembler les informations
d'authentification travers les applications et les domaines. Cela permet une authentification des clients et des
services scurise et transparente durant les connexions, sans ncessit de codage manuel. Ce framework STS
est une autre contribution importante de Talend la communaut Apache CXF.

Pour plus d'informations, consultez Dmo Rent-a-Car utilisant Security Token Service pour fournir une
authentification WS-Security base SAML ainsi que le Guide Talend ESB Infrastructure Services Configuration
Guide (en anglais).

1.2.2. Talend Open Studio for ESB


Talend Open Studio for ESB un environnement innovant bas Eclipse pour modliser, configurer, dployer et
grer des services de donnes comprend Talend ESB Standard Edition. Talend Open Studio for ESB limine les
longues courbes d'apprentissage et rduit le temps de dveloppement en rendant les dveloppeurs plus productifs
permettant ainsi aux entreprises de rpondre rapidement aux demandes mtier.

8 Guide de prise en main de Talend ESB


Talend Open Studio for ESB

Figure 1.5. Principes de fonctionnement de Talend Open Studio for ESB

Trois diffrents types de blocs fonctionnels peuvent tre identifis :

Le bloc bleu reprsente une instance du Studio Talend dans laquelle vous pouvez effectuer des processus
d'intgration de donnes ou de services de donnes, des routes de mdiation et des services. Pour plus
d'informations, consultez les chapitres correspondants, dans le Guide utilisateur de Talend Open Studio for ESB.

Les autres blocs reprsentent Talend ESB Standard Edition, compos d'un ou plusieurs Talend Runtimes et des
services d'infrastructures ESB supplmentaires :

En rouge, un ou plusieurs Talend Runtimes (conteneurs d'excution) dploys dans votre systme
d'informations. Talend Runtime vous permet de dployer et d'excuter des Jobs, Routes et Services crs dans
le Studio Talend. Pour plus d'informations concernant le dploiement d'lments dans Talend Runtime via le
studio, consultez le Guide utilisateur de Talend Open Studio for ESB. Pour plus d'informations concernant
Talend Runtime, consultez le Guide Talend ESB Container Administration Guide (en anglais).

Si vous avez plusieurs Talend Runtimes dans lesquels dployer les Services et les Routes, vous pouvez rpartir
la charge des excutions selon vos besoins. Toutes les instances de Talend Runtime communiquent entre elles
via le Service Locator afin d'identifier la plus mme de dployer les Services ou Routes et de les excuter.

En orange, une base de donnes de monitoring rassemble les informations de log de l'excution de vos
processus de donnes et de vos activits de services.

Les informations de log des processus de donnes peuvent tre captures dans le Studio Talend grce
l'utilisation des composants tFlowMeterCatcher, tStatCatcher et tLogCatcher. Pour plus d'informations,

Guide de prise en main de Talend ESB 9


Talend Enterprise ESB

consultez le Guide de rfrence des Composants Talend. Pour automatiser les fonctionnalits des composants
tFlowMeterCatcher, tStatCatcher et tLogCatcher sans les utiliser, utilisez l'onglet Stats & Logs. Pour
plus d'informations concernant cet onglet, consultez le Guide utilisateur de Talend Open Studio for ESB.

Service Activity Monitoring permet aux utilisateurs finaux de monitorer les appels de services. Il fournit des
informations monitores et consolides relatives aux vnements pouvant tre utilises pour comprendre les
requtes sous-jacentes et les rponses composant l'vnement. Il monitore galement les erreurs pouvant tre
gnres de manire inattendue et supporte les dcisions de la gestion des systmes. Pour plus d'informations
concernant Service Activity Monitoring, consultez son chapitre dans le Guide Talend ESB Infrastructure
Services Configuration Guide (en anglais).

En plus du Service Locator et Service Activity Monitoring, Talend Runtime fournit des fonctionnalits
Security Token Service pouvant tre utilises pour tablir une relation de confiance entre un client et un service
Web, particulirement s'ils sont dans diffrents domaines de scurit. Security Token Service est utilis pour
mettre un jeton de scurit, c'est--dire un ensemble de dclarations telles que le nom, le rle et le code
d'autorisation, pour que le client accde au service. Seul le rcepteur du message doit connatre le certificat
STS afin de vrifier la signature du jeton. Cela permet d'avoir des informations fiables d'authentification.

Pour plus d'informations concernant l'installation de toutes ces applications, consultez le Guide d'Installation et
de migration Talend.

1.2.3. Talend Enterprise ESB


Talend Enterprise ESB est conu pour les quipes d'applications devant grer des projets de dveloppement avec
diffrentes quipes et faire fonctionner leurs environnements de production intgrs travers leur entreprise, de
manire cohrente. L'ESB de Talend comprend toutes les fonctionnalits de Talend Open Studio for ESB et y
ajoute le travail collaboratif, la gestion d'entreprise ainsi que d'autres fonctionnalits.

Figure 1.6. Principes de fonctionnement de Talend Enterprise ESB

Cinq types diffrents de blocs fonctionnels sont dcrits :

10 Guide de prise en main de Talend ESB


Talend Enterprise ESB

Le bloc bleu clair inclut un ou plusieurs studio(s) Talend et navigateurs Web pouvant tre sur la mme machine
ou sur des machines diffrentes.

Dans le studio, les utilisateurs finaux peuvent mener bien des processus techniques : processus d'intgration
ou de services de donnes, routes et services de mdiation et les publier dans le rfrentiel d'artefacts. Le Studio
Talend permet l'utilisateur de travailler sur tout projet pour lequel il possde les autorisations. Pour plus
d'informations, consultez le Guide utilisateur du Studio Talend.

Depuis leur navigateur Web, les utilisateurs finaux peuvent se connecter un Talend Administration Center
distant, via un protocole HTTP scuris.

Les utilisateurs finaux, dans cette description, peuvent comprendre les dveloppeurs, les chefs de projet, les
administrateurs, ainsi que toute autre personne implique dans la construction de services Web, REST, de
donnes et routes de mdiation. Chaque utilisateur final peut utiliser le Studio Talend ou Talend Administration
Center, ou les deux, selon la politique de l'entreprise.

Le bloc violet comprend le module Talend Administration Center (serveur d'application) bas Web connect
deux rfrentiels partags : un sur un serveur SVN et l'autre sur un serveur de base de donnes.

Talend Administration Center permet la gestion et l'administration de tous les projets. Les mtadonnes
d'administration (comptes d'utilisateurs, droits d'accs et autorisations des projets, par exemple) sont stockes
sur le serveur de base de donnes et les mtadonnes des projets (Jobs, Business Models, Routines, Routes,
Services, par exemple) sont stockes sur le serveur SVN (afin de les partager facilement entre les utilisateurs
finaux).

Talend Administration Center vous permet galement d'accder aux Routes et Services crs dans le Studio
Talend ainsi que de les grer, les publier dans le rfrentiel d'artefacts et configurer leur dploiement et leur
excution dans Talend Runtime.

De plus, Talend Administration Center vous permet d'accder aux artefacts ESB et de les utiliser de manire
plus scurise, ainsi que de grer les utilisateurs et leur accs. Avec Talend Administration Center, vous
pouvez stocker et grer les ressources de vos services ainsi que leurs politiques de scurit dans un rfrentiel
ddi, Service Registry. Service Registry est intgr dans le conteneur ESB de Talend. A partir de Talend
Administration Center, vous pouvez centraliser, maintenir et distribuer des services et des politiques. Ainsi, les
services et politiques de votre entreprise restent toujours accessibles, cohrents et rutilisables. En plus de la
scurit des services, Talend Administration Center fournit des fonctionnalits relatives aux autorisations, vous
permettant de donner des utilisateurs et des rles spcifiques des droits d'accs des services spcifiques.
Les utilisateurs et leurs rles doivent tre d'abord dfinis dans l'application Web Talend Identity Management
Service (base sur Apache Syncope), galement accessible via Talend Administration Center.

A partir de Talend Administration Center, vous pouvez monitorer les vnements et rechercher parmi les
vnements collects travers les conteneurs distribus. Ces vnements peuvent tre des logs provenant
du conteneur de Talend Runtime (Jobs, Routes, etc.), des vnements OSGi gnrs par Talend Runtime
(informations concernant les bundles) et des vnements provenant de Service Activity Monitoring. Pour plus
d'informations concernant les diffrents vnements pouvant tre monitors, indexs et recherchs et pour plus
d'informations concernant comment configurer leur collection, consultez le Guide Talend ESB Infrastructure
Services Guide (en anglais).

Pour plus d'informations, consultez le Guide utilisateur de Talend Administration Center.

Le bloc bleu fonc reprsente le rfrentiel d'artefacts stockant :

les mises jour du logiciel (Software Updates) disponibles au tlchargement.

les Routes et Services publis depuis le Studio Talend prts tre dploys et excuts dans Talend Runtime.

Vous pouvez accder ces artefacts via l'application Web du rfrentiel d'artefacts (Artifact repository),
accessible depuis les pages ESB Publisher et Software update de Talend Administration Center.

Guide de prise en main de Talend ESB 11


Plateformes Talend

Le bloc rouge reprsente un ou plusieurs Talend Runtimes (conteneur d'excution) dploy(s) dans votre systme
d'informations. Talend Runtime dploie et excute les processus techniques selon la configuration dfinie dans
l'application Web de Talend Administration Center. Ces processus sont des Routes et des Services rcuprs
du rfrentiel d'artefacts.

Si vous avez plusieurs Talend Runtimes dans lesquels dployer les artefacts de Services et de Routes, vous
pouvez rpartir les excutions selon vos besoins. Toutes les instances de Talend Runtime communiquent
entre elles via le Service Locator, afin d'identifier celle qui dploiera et excutera le plus probablement les
artefacts configurs pour un dploiement dans Talend Administration Center. Le Talend Runtime choisi pour
le dploiement effectue une requte pour les artefacts dployer et excuter partir du rfrentiel d'artefacts.
Le rfrentiel d'artefacts envoie Talend Runtime les artefacts demands, avec les dpendances ncessaires
leur excution. Talend Runtime les dploie et les excute.

Le bloc orange reprsente le Monitoring de l'Activity Monitoring Console et de Service Activity Monitoring.

L'Activity Monitoring Console permet aux utilisateurs finaux de monitorer l'excution des processus techniques.
Elle fournit des fonctionnalits de monitoring dtaill pouvant tre utilises afin de consolider les informations
de log collectes, comprendre les interactions sous-jacentes des flux de donnes, empcher les erreurs gnres
de manire inattendue et aider prendre des dcisions concernant la gestion du systme.

Service Activity Monitoring permet aux utilisateurs finaux de monitorer les appels de services. Il fournit des
fonctionnalits de monitoring et des informations consolides concernant les vnements dont l'utilisateur final
peut comprendre les requtes et les rponses sous-jacentes, monitorer les erreurs gnres de manire inattendue
et aider prendre des dcisions concernant la gestion du systme.

Pour plus d'informations concernant l'installation de ces applications, consultez le Guide d'installation et de
migration Talend.

1.2.4. Plateformes Talend


Les plateformes Talend (for Data Services, for Enterprise Integration, for MDM et Universal) tendent Talend
Enterprise ESB avec des fonctionnalits de clustering avanc, de gestion des processus mtier, d'intgration
d'applications, de mapping de donnes avanc et de gestion de donnes, permettant ainsi aux entreprises
d'amliorer leur productivit, de terminer leurs projets plus facilement et de diminuer les cots oprationnels.
Talend Platform Universal comprend les technologies Big Data par dfaut, mais ces technologies sont galement
disponibles en option dans les autres plateformes. Talend Platform for Enterprise Integration et Talend Platform
Universal comprennent galement un module BPM contenant des fonctionnalits avances de modlisation, de
dveloppement, de dploiement et de gestion.

12 Guide de prise en main de Talend ESB


Chapitre 2. Prise en main de la solution ESB
de Talend
Ce chapitre vous donne les informations ncessaires afin de commencer utiliser la solution ESB de Talend. A la
fin de ce chapitre, vous serez capable d'excuter les exemples de dmonstration des chapitres suivants.

Les principales tapes suivre pour commencer travailler avec le logiciel sont dcrites dans les sections
suivantes :

1. Prrequis l'utilisation des produits ESB de Talend

2. Tlchargement et installation du logiciel

3. Dmarrer le logiciel

4. Prrequis logiciels pour les dmos

Guide de prise en main de Talend ESB


Prrequis l'utilisation des produits ESB de Talend

2.1. Prrequis l'utilisation des produits ESB


de Talend
Des prrequis logiciels et matriels sont ncessaires, avant l'installation des produits ESB de Talend.

Pour une liste complte des prrequis d'installation, des logiciels compatibles et des versions des logiciels,
consultez :

le Guide d'installation et de migration Talend, si vous utilisez le Studio Talend.

le Guide d'installation Talend correspondant, si vous utilisez Talend ESB Standard Edition.
<TalendRuntimePath> est employ pour le rpertoire o est install Talend Runtime. Cela indique le chemin complet de
Runtime_ESBSE ou de Talend-ESB-VA.B.C, selon la version du logiciel que vous utilisez. Pensez remplacer par le
chemin qui vous concerne.

Pour Talend Runtime, les exemples se situent dans le rpertoire <TalendRuntimePath>/examples/talend.

2.2. Tlchargement et installation du logiciel


Cette section explique quels produits peuvent tre utiliss et quels produits vont tre utiliss dans les dmos
documentes dans les chapitres suivants, ainsi que comment les installer, les configurer et les dmarrer.

Selon la version du produit que vous utilisez, consultez :

Produits communautaires.

Produits Enterprise et Platform.

2.2.1. Produits communautaires


Les produits communautaires ESB de Talend sont disponibles librement sur le site Web : http://www.talend.com/
download.

Les produits disponibles sont :

Talend ESB Standard Edition, un conteneur OSGi bas sur Apache Karaf et comprenant des Services
d'infrastructures supplmentaires.

Talend Open Studio for ESB, comprenant un studio ainsi qu'ESB Runtime (moteur d'excution). ESB Runtime
est l'quivalent exact de Talend ESB Standard Edition.

Pour une vue d'ensemble de ces produits, consultez Introduction aux solutions ESB de Talend, dans ce guide.

Logiciels ncessaires aux dmos :

Pour les exemples d'utilisation documents dans Construction et dploiement des Services de donnes et des
Routes l'aide du Studio et Construction et dploiement de Services REST dans le Studio, vous devez installer
et dmarrer le studio et l'ESB Runtime de Talend Open Studio for ESB, dans lequel les Services d'Infrastructure
sont activs.

Pour les cas d'usage documents dans Construction et dploiement de Services de donnes et Routes l'aide de
Java, Dmo Rent-a-Car utilisant Service Locator et Service Activity Monitoring et Dmo Rent-a-Car utilisant
Security Token Service pour fournir une authentification WS-Security base SAML, vous avez uniquement
besoin de Talend ESB Standard Edition (ou de l'ESB Runtime de Talend Open Studio for ESB), dans lequel les
Services d'Infrastructure sont galement activs.

14 Guide de prise en main de Talend ESB


Produits Enterprise et Platform

Le scnario document dans Dmo Rent-a-Car utilisant Artifact Repository s'adresse davantage aux utilisateurs
des produits Enterprise et Platform, car il ncessite un logiciel de gestion de rfrentiel, compris par dfaut dans
ces produits. Cependant, l'utilisation d'un logiciel externe de gestion de rfrentiel est galement possible avec
les projets communautaires.

Le cas d'utilisation document dans Utilisation de XKMS avec la dmo Rent-a-Car s'adresse uniquement aux
utilisateurs des produits Enterprise et Platform, car il ncessite des fonctionnalits de cryptage disponibles dans
ces produits.

Pour plus d'informations concernant :

l'installation et le dmarrage de Talend Open Studio for ESB et des Services d'infrastructures, suivez les
instructions du Guide d'installation et de migration Talend Open Studio for ESB.

l'installation et le dmarrage de Talend ESB Standard Edition et des Services d'infrastructures, suivez les
instructions du Guide d'installation Talend ESB Standard Edition.

2.2.2. Produits Enterprise et Platform


Les clients ayant souscrit une dition Enterprise ou Platform reoivent un e-mail contenant les instructions de
tlchargement et un fichier de licence.

Pour installer l'dition Enterprise ou Platform, il est recommand d'utiliser Talend Installer. Vous pouvez
galement suivre les instructions disponibles dans le Guide d'installation et de migration Talend fourni dans l'e-
mail.

Pour une vue d'ensemble de ces produits, consultez Introduction aux solutions ESB de Talend, dans ce guide.

2.3. Crer un conteneur de remplacement


pour les dmos
Un conteneur de Talend Runtime est intgr dans le sous-dossier container de linstallation de l'ESB de Talend.
Pour excuter certaines dmos dcrites dans ce guide, il est ncessaire d'avoir deux conteneurs. Cette section dcrit
comment crer le second sur la mme machine.

Le second conteneur correspond une situation relle d'un client et d'un serveur s'excutant dans diffrents
conteneurs. Ce conteneur est une copie du conteneur de Talend Runtime que vous pouvez lancer sparment et dans
laquelle vous pouvez dployer des applications. Ce second conteneur est requis pour l'Exemple SayHelloRoute et
dans la dmo Rent-a-Car, dans Dmo Rent-a-Car utilisant Service Locator et Service Activity Monitoring.

Pour les utilisateurs de Talend ESB Standard Edition ou de Talend Open Studio for ESB, prenez directement le
package TESB_SE-VA.B.C tlcharg ou bien le dossier Runtime_ESBSE extrait depuis l'installation de Talend
Open Studio for ESB, et copiez son dossier container.

Pour les clients Enterprise et Platform, prenez le package Talend-ESB-VA.B.C tlcharg et copiez son dossier
container. Vous pouvez galement utiliser directement le package Talend Runtime (Talend-Runtime-VA.B.C),
l'exact quivalent du dossier container de la solution ESB de Talend.

Pour les clients Enterprise et Platform ayant install l'ESB de Talend via Talend Installer, vous devez copier le
dossier esb/container.

Copier le conteneur
1. Assurez-vous que le conteneur copier n'a jamais t dmarr.

Guide de prise en main de Talend ESB 15


Crer un conteneur de remplacement pour les dmos

2. Depuis un terminal Linux ou une invite de commande Windows, allez dans le rpertoire
<TalendRuntimePath>.

3. Crez une copie du rpertoire container ainsi que de son contenu en excutant la commande correspondant
votre systme :

cp -r container alternate-container (sous Linux)

robocopy /e container alternate-container (sous Windows)

xcopy /e container alternate-container (sous un ancien Windows sans Robocopy)

Vous avez un second conteneur dans le rpertoire alternate-container.

Pour viter les conflits entre les deux instances du conteneur, vous devez adapter la configuration du conteneur
alternate-container.

Configurer le conteneur de remplacement


1. Assurez-vous que le conteneur par dfaut (le premier) n'est pas en cours d'excution, afin de ne pas risquer
un conflit relatif aux ports.

2. Excutez le conteneur de remplacement, alternate-container avec ses paramtres par dfaut.

Sous Linux, allez dans le rpertoire <TalendRuntimePath>/alternate-container et excutez la


commande suivante :
./bin/trun

Sous Windows, allez dans le rpertoire <TalendRuntimePath>\alternate-container et excutez la


commande suivante :
.\bin\trun.bat

3. Attendez la fin de la phase d'initialisation. Pour vous assurer que Talend Runtime est dmarr avec tous ses
bundles, crs et actifs, excutez la commande suivante :
list

4. Excutez la commande suivante dans l'invite de commande du second conteneur pour appeler le script
permettant d'adapter ses paramtres de configuration en leur assignant de nouvelles valeurs :
source scripts/configureC1.sh

Les paramtres sont mis jour et sauvegards localement. A la prochaine excution du second conteneur, les
nouveaux paramtres seront utiliss. Les deux conteneurs pourront alors tre excuts simultanment.

5. Pour les dmos suivantes, il n'est pas ncessaire de, mais vous pouvez, si vous souhaitez, crer un troisime
ou un quatrime conteneur, copier le rpertoire du conteneur original un troisime emplacement (voir ci-
dessus). Dmarrez le troisime conteneur et utilisez la commande suivante dans l'invite de commande du
conteneur afin d'appeler un autre script d'adaptation :
source scripts/configureC2.sh

De la mme manire, un quatrime conteneur devrait utiliser :


source scripts/configureC3.sh

Vous pouvez reconfigurer les valeurs par dfaut dans tout conteneur, en utilisant :
source scripts/configureC0.sh

Si vous avez une erreur "Port already in use" (port dj utilis) lorsque vous dmarrez un conteneur de remplacement, vrifiez
qu'aucun conteneur ne s'excute avec les paramtres par dfaut. Si vous avez toujours l'erreur, il est possible que le port

16 Guide de prise en main de Talend ESB


Dmarrer le logiciel

utilis par un processus sans relation avec celui-ci soit en cause. Mettez jour manuellement vos fichiers de configuration
dans le dossier alternate-container/etc.

2.4. Dmarrer le logiciel


Cette section vous permet de dmarrer le logiciel requis pour suivre les cas d'utilisation dcrits dans ce guide.

Vrifiez que vous avez bien install le produit en suivant les instructions dcrites dans le Guide d'installation et
de migration Talend.

Selon le logiciel utiliser, suivez les instructions dcrites dans :

1. Dmarrer Talend Runtime.

2. Dmarrer Talend Administration Center (Enterprise ou Platform uniquement).

3. Dmarrer le Studio Talend.

4. Dmarrer les tableaux de bord ESB.

2.4.1. Dmarrer Talend Runtime


Cette section vous explique comment dmarrer rapidement Talend Runtime pour Talend ESB Standard Edition
et l'ESB de Talend, Enterprise et Platform Edition. Dans la section, les deux ditions sont mentionnes comme
'Talend Runtime', sauf en cas de diffrence spcifique. Cette section dcrit par ailleurs comment dmarrer les
services d'infrastructures de Talend Runtime.

Il est recommand de lire Prrequis l'utilisation des produits ESB de Talend avant de commencer cette section,
de tlcharger Talend Runtime comme dcrit dans Tlchargement et installation du logiciel.

Ce package comprend :

un conteneur de Talend Runtime

et les services d'infrastructures :

Service Locator

Service Activity Monitoring

Security Token Service

ainsi que :

le broker de message Apache ActiveMQ

2.4.1.1. Dmarrer le conteneur de Talend Runtime


1. Si vous avez install le produit via Talend Installer, arrtez le service Talend Runtime.

2. Allez dans le sous-rpertoire <TalendRuntimePath>\container\bin du rpertoire d'installation de Talend


Runtime.

3. Excutez le fichier trun.bat (Windows) ou trun.sh (Linux).

Guide de prise en main de Talend ESB 17


Dmarrer Talend Administration Center

Lorsque le conteneur dmarre, vous pouvez voir une brve introduction (similaire celle ci-dessous) suivie
par l'ouverture de l'invite de commande de la console du conteneur de Talend Runtime :

Aprs avoir dmarr le conteneur de Talend Runtime, vous devez attendre quelques secondes afin que l'initialisation
se termine, avant de saisir les commandes. Karaf, sur lequel est construit le conteneur de Talend Runtime, dmarre
les bundles secondaires en arrire-plan. Par consquent, mme si la console est disponible, les commandes peuvent
ne pas l'tre.

4. Lorsque la Console affiche : karaf@trun>, saisissez la commande list.

Cela permet de lister tous les bundles OSGi installs dans le conteneur de Talend Runtime et d'indiquer s'ils
sont actifs ou non.

Pour plus d'informations, consultez le Guide d'installation et de migration Talend.

Pour plus d'informations concernant le conteneur de Talend Runtime et comment le prendre en main, consultez le
Guide Talend ESB Container Administration Guide (en anglais).

2.4.1.2. Dmarrer tous les Services d'Infrastructures


Au lieu de dmarrer chaque Service d'Infrastructure sparment, vous pouvez tous les dmarrer en une fois. Une
fois le conteneur de Talend Runtime dmarr et tous les bundles actifs :

1. Saisissez tesb:start-all afin de dmarrer tous les Services d'Infrastructures.

Les services Service Locator, Service Activity Monitoring et Security Token Service s'excutent en tant que
Features dans le conteneur de Talend Runtime.

Pour les versions Enterprise et Platform de la solution ESB de Talend, cette commande fonctionne comme
dans Talend ESB Standard Edition et Talend Open Studio for ESB, mais installe et dmarre des services
supplmentaires (par exemple : Service Registry, Authorization, etc.).

2. Dans un but de dmonstration, les utilisateurs des produits Enterprise et Platform doivent changer le systme
de gestion de scurit par dfaut, Talend Identity Management Service et mettre celui utilis par dfaut de
Talend ESB Standard Edition et Talend Open Studio for ESB, le gestionnaire d'authentification JAAS, plus
simple utiliser, qui ne ncessite pas l'installation de logiciels supplmentaires.

Dans la console du conteneur de Talend Runtime, saisissez :


tesb:switch-sts-jaas

Pour plus d'informations relatives au lancement des services ci-dessus, individuellement ou en standalone,
consultez le Guide d'installation et de migration Talend.

Pour plus d'informations concernant les Services d'Infrastructures de l'ESB de Talend, consultez le Guide Talend
ESB Infrastructure Services Configuration Guide (en anglais).

2.4.2. Dmarrer Talend Administration Center


Si vous tes un utilisateur d'une version Enterprise ou Platform, vous devez dmarrer Talend Administration
Center, cette tape. Si vous utilisez Talend Open Studio for ESB, passez directement Dmarrer le Studio Talend.

18 Guide de prise en main de Talend ESB


Dmarrer Talend Administration Center

Dans Talend Administration Center, vous pouvez crer un nouveau projet distant, crer un nouveau compte
utilisateur et vous donner les droits d'accs ce nouveau projet. L'avantage des projets distants est que plusieurs
utilisateurs peuvent travailler en collaboration sur le mme projet centralis, ce qui est la base pour les entreprises
ayant des projets de niveau Entreprise.

Vous pouvez grer la publication et le dploiement des artefacts ESB tels que les services SOAP, les Jobs de
services REST et les Routes dveloppes via le Studio Talend dans le conteneur de Talend Runtime directement
depuis Talend Administration Center. Pour ce faire, connectez Talend Administration Center au conteneur de
Talend Runtime. Pour plus d'informations, consultez Connecter Talend Runtime Talend Administration Center.

2.4.2.1. Excuter Talend Administration Center


1. Si vous avez install le produit via Talend Installer, allez dans le rpertoire nomm tac.

2. Double-cliquez sur le fichier excutable : start_tac.bat.

Cela lance le conteneur de la servlet (par dfaut, Apache Tomcat) contenant Talend Administration Center.

3. Une fois dmarr, connectez-vous Talend Administration Center avec le compte par dfaut :
admin@company.com/admin.

Si vous avez install le produit manuellement, cela signifie que vous avez dploy Talend Administration Center
dans votre propre conteneur de servlet. Excutez simplement ce conteneur afin de dmarrer Talend Administration
Center.

2.4.2.2. Configurer Talend Administration Center


Cliquez sur le lien Configuration du menu de gauche afin de terminer la configuration de Talend Administration
Center.

La plupart des avertissements qui s'affichent sont lis au fait que tous les modules du produit ne sont pas encore
dmarrs. Par exemple :

Commandline/secondary devient vert si vous dcidez d'utiliser et de dmarrer un CommandLine secondaire,


ce qui n'est pas le cas dans les exemples d'utilisation qui suivent.

ESB Service Locator and SAM devient vert si vous dmarrez la solution ESB de Talend et ses Services
d'Infrastructures.

ESB Identity and Access Management devient vert uniquement si vous installez et dmarrez Talend Identity
Management Service, ce qui n'est pas le cas dans les exemples d'utilisation qui suivent.

ESB Service Registry devient vert si vous dmarrez l'ESB de Talend et ses Services d'Infrastructures.

Guide de prise en main de Talend ESB 19


Dmarrer Talend Administration Center

Software Update devient vert si vous dmarrez l'Artifact Repository Archiva ddi, ce qui n'est pas le cas dans
les exemples d'utilisation qui suivent. Cependant, notez que l'Artifact Repository Archiva est dprci.

1. Pour la section Commandline/primary de la page Configuration de Talend Administration Center,


dmarrez le CommandLine : cmdline/start_cmdline.bat (Windows) ou cmdline/start_cmdline.sh
(Linux) si vous avez utilis Talend Installer.

Si vous avez install le CommandLine manuellement, parcourez votre systme jusqu'au rpertoire dans
lequel il est install et excutez le fichier commandline.bat (Windows) ou commandline-linux.sh,
commandline-linux_x86_64.sh (Linux), selon votre systme d'exploitation et votre version de Linux.

Le CommandLine doit tre dmarr pour utiliser ESB Publisher.

2. Pour la section ESB Publisher and Conductor de la page Configuration de Talend Administration Center,
dmarrez Talend Nexus Artifact Repository.

Le rfrentiel d'artefacts, Artifact Repository est fourni avec Talend Administration Center. Si vous avez
install le produit via Talend Installer, vous le trouvez dans le dossier tac de votre installation, dans un
sous-dossier Artifact-Repository-Nexus-VA.B.C.D.E. Si vous avez install manuellement le produit,
le rfrentiel d'artefacts Artifact Repository est disponible dans le package de Talend Administration Center
galement (Talend-AdministrationCenter-rXXXXXX-VA.B.C).

Dans le rpertoire Artifact-Repository-Nexus-VA.B.C.D.E, excutez :

./bin/nexus console (Linux)

.\bin\nexus.bat console (Windows).

Il s'excute sur http://localhost:8081/nexus/index.html. Remplacez localhost et 8081 par l'adresse


IP et le port du serveur sur lequel vous avez install le rfrentiel Artifact Repository. Vous pouvez vous
connecter avec l'identifiant et le mot de passe par dfaut : admin/admin123

3. Configurez les paramtres Log4j en renseignant le chemin d'accs aux fichiers de log technique et mtier.

Le paramtre Technical logstash appender devient vert lorsque vous dmarrez le serveur Talend Log Server
: start_logserver.bat (Windows) ou start_logserver.sh (Linux).

4. Configurez les paramtres Svn en saisissant les informations de connexion votre SVN.

20 Guide de prise en main de Talend ESB


Dmarrer Talend Administration Center

Pour ce faire, vous devez avoir install un serveur Subversion si vous tes sous Windows, puisque Linux
embarque Subversion, et avoir cr deux rfrentiels sur votre serveur Subversion : un pour vos projets Talend
et un pour les bibliothques externes tlcharges lors du dmarrage du Studio.

Renseignez les informations de connexion ces deux rfrentiels dans l'entre Svn de configuration, dans
Talend Administration Center.

2.4.2.3. Prendre Talend Administration Center en main


Une fois Talend Administration Center dmarr et configur, vous pouvez utiliser ses fonctionnalits
d'administration.

Configurer votre premier utilisateur et projet


1. Cliquez sur le lien Users du menu de gauche et, dans la page Users, crez un nouvel utilisateur :

2. Cliquez sur le bouton Add.

3. Renseignez le formulaire Data, droite, en saisissant vos informations de connexion Talend Administration
Center et SVN.

Assurez-vous d'assigner les rles de Designer et Operation manager aux rles, afin de pouvoir
respectivement utiliser le Studio et grer le dploiement des artefacts ESB partir de Talend Administration
Center.

4. Cliquez sur Save. Le nouveau compte cr s'affiche dans la liste.

5. Cliquez sur le lien Projects dans le menu de gauche et, dans la page Projects, crez un nouveau projet.

6. Cliquez sur le bouton Add.

7. Dans le formulaire Project, droite, saisissez le nom de votre projet dans le champ Label.

Guide de prise en main de Talend ESB 21


Dmarrer Talend Administration Center

8. Cliquez sur Save. Le nouveau projet cr s'affiche dans la liste.

9. Cliquez sur le lien Project authorizations dans le menu de gauche et, dans la page Project authorizations,
donnez les droits d'accs au compte utilisateur cr.

10. Dans le formulaire Project, gauche, cliquez sur le projet afin de le slectionner.

11. Dans le panneau User Authorizations, droite, cliquez sur l'icne utilisateur Read write de l'utilisateur :

Vous pouvez vous connecter ce projet.

2.4.2.4. Connecter Talend Runtime Talend Administration


Center
Pour ce faire, vous devez tre connect en tant qu'utilisateur ayant un rle Operation mananger (exploitant).
Si vous tes connect en tant qu'Administrator avec le compte admin@company.com, dconnectez-vous et
reconnectez-vous avec l'utilisateur que vous avez cr dans Prendre Talend Administration Center en main .

1. Cliquez sur la page Servers dans le menu gauche, afin d'afficher la liste des serveurs.

Si vous avez install le produit via Talend Installer, selon votre licence, un serveur, le Jobserver, doit tre
install et s'affiche par dfaut sous le nom serv1.

2. Crez un nouveau serveur en cliquant sur Add > Add server. Le formulaire Execution server s'affiche
droite.

3. Renseignez le formulaire comme indiqu ci-dessous puis cliquez sur Save :

22 Guide de prise en main de Talend ESB


Dmarrer le Studio Talend

Label : Talend Runtime Container, par exemple.

Host : 127.0.0.1

Cochez la case Talend Runtime.

2.4.3. Dmarrer le Studio Talend


Si vous utilisez les produits Enterprise ou Platform, vous devez d'abord suivre les instructions dcrites dans
Dmarrer Talend Administration Center.

2.4.3.1. Lancer le Studio


1. Lancez le fichier excutable correspondant votre systme d'exploitation, par exemple :

TOS_ESB-win-*.exe (Windows) ou TOS_ESB-linux-gtk-* (Linux) pour Talend Open Studio for ESB.

Talend-Studio-win-*.exe (Windows) ou Talend-Studio-linux-gtk-* (Linux) pour un studio


Enterprise ou Platform.

2. Pour les produits Enterprise ou Platform, si vous avez install manuellement le studio, il vous est demand
de charger un fichier de licence. Parcourez votre systme jusqu' votre fichier de licence et cliquez sur OK
pour le charger.

2.4.3.2. Se connecter au studio

Pour Talend Open Studio for ESB

Aucune information de connexion n'est requise. Comme c'est la premire utilisation par cet utilisateur, il vous est
demand d'importer un projet dmo et de crer un nouveau projet.

1. Crez un nouveau projet :

Dans la fentre de connexion au Studio Talend, saisissez le nom du projet dans le champ Create a New
Project puis cliquez sur Create.

Guide de prise en main de Talend ESB 23


Dmarrer le Studio Talend

2. L'assistant [New project] s'ouvre afin que vous puissiez renseigner les dtails du projet. Vous pouvez ajouter
une description de votre projet.

Cliquez sur Finish. La fentre de connexion s'affiche nouveau, avec ce projet. Cliquez sur Open.

L'assistant [Connect to TalendForge] s'ouvre.

3. Si vous tes dj enregistr sur TalendForge (tutoriels, support, etc.), connectez-vous ici. Si vous n'tes pas
encore enregistr, saisissez vos informations, afin de crer un compte. Vous pouvez galement passer cette
tape en cliquant sur le bouton Skip.

4. La page [Welcome] s'affiche dans le Studio Talend pendant que l'initialisation du studio se termine.

Cliquez sur le bouton [x] de la page [Welcome] afin de la fermer et accder l'cran principal du Studio
Talend.

Pour un studio Enterprise ou Platform


Dans un studio Enterprise ou Platform, connectez-vous au projet cr dans Talend Administration Center.

1. Crez une nouvelle connexion base sur le compte cr dans Talend Administration Center:

Cliquez sur le bouton [...] ct de la liste Connection. L'assistant [Connection] s'ouvre.

24 Guide de prise en main de Talend ESB


Dmarrer le Studio Talend

2. Dans la liste Repository, slectionnez Remote.

3. Dans le champ Name, saisissez le nom que vous souhaitez donner la connexion.

4. Dans les champs User E-mail et User Password, saisissez respectivement l'adresse e-mail et le mot de passe
du compte utilisateur cr dans Talend Administration Center.

5. Dans le champ Web-app Url, saisissez l'URL de Talend Administration Center.

6. Cliquez sur le bouton Check url afin de vrifier que la connexion Talend Administration Center est bonne.

7. Si la connexion est bonne, cliquez sur OK pour la crer.

8. Dans la fentre de connexion au Studio Talend, les champs sont renseigns et contiennent les informations
de connexion.

Dans les listes Project et SVN Branch, tous les projets et branches auxquels vous avez accs et sur lesquels
vous pouvez travailler doivent se trouver dans la liste.

Dans cet exemple, un seul projet a t cr et il ne contient aucune branche, vous n'avez donc rien
slectionner.

9. Cliquez sur Open pour ouvrir le projet.

L'assistant [Connect to TalendForge] s'ouvre.

10. Si vous souhaitez vous connecter la communaut en ligne de Talend et en tirer parti, crez un compte ou
connectez-vous partir de cet assistant. Vous pouvez galement passer cette tape en cliquant sur le bouton
Skip.

11. Pour terminer le dmarrage du studio, l'assistant [Additional Talend Packages] vous demande d'installer
des bibliothques tierces requises ou facultatives. Vous devez installer ces bibliothques afin de tirer parti
au maximum des fonctionnalits du studio. Assurez-vous d'avoir bien coch les cases Required et Optional
third-party libraries et cliquez sutr Finish.

12. Dans l'assistant [Download external modules] qui s'ouvre, cliquez sur le bouton Accept all au bas de
l'assistant pour accepter toutes les licences des modules externes utiliss dans le studio.

13. L'assistant [Migration tasks done] s'ouvre et vous informe des tches de migration. Cliquez sur OK pour
fermer l'assistant.

14. La page [Welcome] du Studio Talend s'ouvre, pendant que l'initialisation du studio se termine.

Cliquez sur le bouton [x] de la page [Welcome] afin de la fermer et d'accder l'cran principal du Studio
Talend.

Guide de prise en main de Talend ESB 25


Dmarrer les tableaux de bord ESB

2.4.4. Dmarrer les tableaux de bord ESB


Si vous tes un utilisateur des produits Enterprise ou Platform, vous pouvez accder aux tableaux de bord ESB
dans Talend Administration Center. Ces tableaux de bord regroupent les informations de log lies aux vnements
ESB, aux endpoints du Locator et la disponibilit des services, ainsi qu'au Service Activity Monitoring. Cette
fonctionnalit n'est pas disponible avec le Talend ESB Standard Edition et le Talend Open Studio for ESB.

Pour pouvoir accder aux diffrents tableaux de bord ESB, vous devez en premier lieu dmarrer Talend
Administration Center (pour plus d'informations, consultez Dmarrer Talend Administration Center), puis le
Talend Log Server.

1. Si vous avez install le produit via Talend Installer, allez dans le rpertoire nomm logserv et double-cliquez
sur le fichier excutable : start_logserver.bat (Windows) ou start_logserver.sh (Linux).

Si vous avez tlcharg l'archive Talend-LogServer-VA.B.C.D.zip, dzippez-la et double-cliquez sur le fichier


excutable : start_logserver.bat (Windows) ou start_logserver.sh (Linux).

2. Dans la console du Talend ESB Container, excutez les commandes suivantes :

tesb:start-el-server

tesb:stop-el-server

3. Modifiez les paramtres suivants du fichier de configuration : <TalendRuntimePath>\container\etc


\org.talend.eventlogging.server.cfg.

persistence.event.db.active.default=false

search.active.default=true

elasticsearch.available=true

4. Retournez dans la console du Talend ESB Container et excutez la commande suivante pour dmarrer
nouveau le service Event Logging, prsent configur correctement :

tesb:start-el-default

5. Comme vous avez utilis la commande tesb:start-all pour dmarrer tous les services d'Infrastructure
dans le conteneur de Talend Runtime lors de son premier dmarrage, les services Service Activity Monitoring
ont galement t dmarrs. Vous devez les arrter afin de dmarrer uniquement le service d'extraction et
consultation (retrieval service) du Service Activity Monitoring, ncessaire aux Dashboards ESB. Pour ce
faire, excutez les commandes suivantes :

tesb:stop-sam

tesb:start-sam-retrieval-service

6. Une fois tous les services lancs, dmarrez les couteurs (listeners) de l'Event Logging pour les vnements
Service Activity Monitoring et Service Locator, via les commandes suivantes :

tesb:start-el-samlistener

tesb:start-el-locatorlistener

Pour plus d'informations concernant la configuration, consultez le Talend ESB Infrastructure Services
Configuration Guide (en anglais) et le Guide utilisateur de Talend Administration Center.

Pour plus d'informations concernant l'accs aux logs gnrs lors de l'excution des exemples contenus dans
ce guide, consultez : Accder aux vnements dans les Dashboards ESB, Accder aux vnements dans les
Dashboards ESB et Accder aux logs des vnements ESB dans Talend Administration Center.
26 Guide de prise en main de Talend ESB
Prrequis logiciels pour les dmos

2.5. Prrequis logiciels pour les dmos


En plus des Prrequis l'utilisation des produits ESB de Talend, un logiciel supplmentaire est ncessaire
l'excution des dmos.

Apache Maven 3.0.3 est utilis pour construire la partie d'export de services de l'exemple SayHello (consultez
Exporter le service et l'excuter dans un conteneur de Talend Runtime) et toutes les dmos Rent-a-car. Apache
Maven doit tre tlcharg partir de http://maven.apache.org/ et install. Le chemin vers le fichier excutable
mvn doit tre ajout votre variable d'environnement Path.

Lorsque vous excutez mvn pour la premire fois, un accs HTTP Internet est requis, pour pouvoir tlcharger
les artefacts requis (et obtenir les versions les plus rcentes). Le rfrentiel Maven local doit tre cr son
emplacement par dfaut, ce qui signifie que la configuration Maven standard ne doit pas tre modifie.

Guide de prise en main de Talend ESB 27


Guide de prise en main de Talend ESB
Chapitre 3. Cas d'usage : dploiements et
excutions simples
Ce chapitre vous apprend utiliser les produits ESB de Talend grce diffrents cas d'usage.

Dans Construction et dploiement des Services de donnes et des Routes l'aide du Studio, vous apprenez
crer des Routes et des Services dans le Studio Talend et les dployer dans Talend Runtime.

Dans Construction et dploiement de Services REST dans le Studio, vous apprenez crer un service REST
dans le Studio Talend, le dployer dans Talend Runtime et l'appeler via un Job consommateur REST.

Dans Construction et dploiement de Services de donnes et Routes l'aide de Java, vous apprenez compiler
des services Apache CXF et les dployer dans Talend Runtime.

Dans Import de la dmo Java Rent-a-Car dans Eclipse, vous apprenez importer des services en tant que projet
dans Eclipse.

Pour plus d'exemples d'utilisation relatifs la cration de services, routes et Jobs de services de donnes dans le
Studio Talend et leur dploiement dans Talend Runtime, au test de services avec un projet soapUI et au test
unitaire de routes l'aide du framework Apache Camel Testing, consultez l'annexe De la thorie la pratique
dans le Guide utilisateur du Studio Talend ESB.

Pour davantage de scnarios relatifs la publication et l'excution d'un service, d'une route ou d'un Job de
services de donnes, ainsi que comment monitorer les endpoints des services et les activits des services dans
Talend Administration Center, consultez l'annexe ESB De la thorie la pratique dans le Guide utilisateur de
Talend Administration Center.

Guide de prise en main de Talend ESB


Construction et dploiement des Services de donnes et des Routes l'aide du Studio

3.1. Construction et dploiement des


Services de donnes et des Routes l'aide
du Studio
Cette section vous permet de commencer utiliser le Studio Talend. Vous allez apprendre construire un exemple
simple SayHello, l'aide de modles prdfinis.

Si seul le dveloppement ESB bas Java vous intresse, vous pouvez passer cette section et reprendre Construction et
dploiement de Services de donnes et Routes l'aide de Java.

Les tapes de l'exemple SayHello sont les suivantes :

1. Installez le Studio Talend comme dcrit dans Dmarrer le logiciel.

2. Construisez un service de donnes simple, SayHello, dans lequel un consommateur envoie des noms un
service, qui affiche "Hello!" avec chacun d'entre eux tour tour.

3. Construisez une Route simple, SayHello.

Cette section vous donne assez d'informations pour crer et excuter la dmo. Pour avoir une vue complte de l'interface du
Studio Talend, consultez le Guide utilisateur du Studio Talend.

Pour plus d'informations concernant les composants spcifiques mentionns dans cette dmo, consultez le Guide de rfrence
des Composants Talend pour les composants relatifs aux services de donnes et le Guide de rfrence des Composants
Mediation de Talend ESB pour les composants de mdiation.

3.1.1. Construire un service de donnes simple


SayHello
La cration de ce service comprend un certain nombre d'tapes, que vous pouvez effectuer par de simples glisser-
dposer des fonctionnalits existantes.

1. Crez un fournisseur SayHello.

2. Crez un consommateur SayHello.

3. Exportez le service vers un conteneur de Talend Runtime et excutez nouveau le consommateur.

3.1.1.1. Crer un fournisseur SayHello


Cette section fournit des instructions tape par tape pour construire le fournisseur SayHello.

Crer un service

Dans cette section, vous allez crer un WSDL dfinissant le contrat externe du service Web que les clients peuvent
utiliser. (Consultez Support des services Web pour plus d'informations).

1. Pour crer le service, cliquez-droit sur Services, dans le menu de gauche et slectionnez Create Service.

30 Guide de prise en main de Talend ESB


Construire un service de donnes simple SayHello

2. Saisissez le nom, SayHelloService, dans le champ Name, l'objectif, Demo, dans le champ Purpose et une
description du service, puis cliquez sur Next.

3. Dans l'tape suivante, appele [Assign WSDL], slectionnez Create new WSDL et cliquez sur Finish pour
retourner l'cran principal.

4. La fentre principale affiche un onglet [SayHelloService_0.1.wsdl]. Ce WSDL contient un


nouveau port (SayHelloServicePort) pour le service et ses oprations de requtes et de rponses

Guide de prise en main de Talend ESB 31


Construire un service de donnes simple SayHello

(SayHelloServiceOperationRequest et SayHelloServiceOperationResponse respectivement). Passez


votre souris sur les flches grises droite des oprations, afin d'afficher leurs paramtres :

Il est possible de modifier les oprations, d'ajouter de nouvelles oprations et de modifier les oprations
existantes. Cependant, les oprations par dfaut suffisent pour cet exemple.

Configurer et exposer un service

Pour modifier les composants dans les sections suivantes :

Cliquez sur la bordure du rectangle afin de dplacer le rectangle.

Annulez ou modifiez ces changements en cliquant-droit sur le rectangle et en slectionnant l'action approprie.

Cliquez au centre d'un rectangle pour effectuer des actions particulires au composant, par exemple, examiner un dtail
du composant).

1. Sauvegardez les dtails du service et des types de donnes de requte/rponse WSDL dans le nud Metadata,
afin que les autres composants puissent y accder.

32 Guide de prise en main de Talend ESB


Construire un service de donnes simple SayHello

Cette option importe les mtadonnes WSDL du service dans le Repository, sous le nud Metadata > File
xml. Cela vous permet de partager les dtails des oprations travers les diffrents services et les autres
composants.

2. Implmentez l'opration - dveloppez les lments affichs dans SayHelloService 0.1 puis cliquez-droit sur
SayHelloServiceOperation 0.1 et slectionnez Assign Job. Slectionnez Create a new Job and Assign it
to this Service Operation puis cliquez sur Next.

Laissez le nom et le prfixe par dfaut, SayHelloServicePortType_SayHelloServiceOperation puis cliquez


sur Finish. Cela cre un nouveau Job, ce qui vous permet d'implmenter les oprations, l'aide des
composants situs dans l'espace de modlisation graphique.

3. Le modle par dfaut du Job SayHelloServicePortType_SayHelloServiceOperation se compose d'un


tESBProviderRequest et d'un tESBProviderResponse. Sparez les deux composants dans l'espace de
modlisation graphique en cliquant sur l'icne du composant tESBProviderResponse_1 et en le glissant
vers la droite.

Guide de prise en main de Talend ESB 33


Construire un service de donnes simple SayHello

4. Ajoutez un composant tXMLMap. Ce composant transforme et route des donnes d'une ou plusieurs
source(s) vers une ou plusieurs destination(s). Saisissez tXMLMap dans le champ de recherche de la Palette.
Vous pouvez trouver deux composants du mme nom dans deux familles diffrentes, mais ces composants
sont les mmes, vous pouvez donc slectionner l'un ou l'autre. Glissez et dposez le composant de votre choix
entre les deux composants ESB.

5. Cliquez-droit sur le centre du tESBProviderRequest_1 et slectionnez Row, puis Main et dposez le bout
du lien sur le tXMLMap_1.

6. Cliquez-droit sur le tXMLMap_1, slectionnez Row > Main et dposez le bout du lien sur le
tESBProviderResponse_1. Nommez le lien Response, puis cliquez sur OK. Cliquez sur Yes lorsqu'on vous
propose d'importer les schmas.

Configurer l'opration de service

1. Personnalisez l'opration de service comme dans le scnario. Double-cliquez sur le tXMLMap_1 pour ouvrir
son diteur. Le tXMLMap est utilis pour router les informations de la requte la rponse et vous permet
d'utiliser les informations du schma existant dans le WDSL.

2. Sous le lien row1 (Main), gauche, cliquez-droit sur payload et slectionnez Import from
Repository. Dans l'assistant [Metadata] qui s'ouvre, parcourez l'arborescence de File XML
SayHelloServiceOperationRequest0.1, slectionnez cet lment et cliquez sur OK.

3. De la mme manire, droite, importez le type de rponse par dfaut, cliquez-droit sur payload puis
slectionnez Import from repository > File XML et SayHelloServiceOperationResponse 0.1.

34 Guide de prise en main de Talend ESB


Construire un service de donnes simple SayHello

Cliquez sur OK.

Les oprations de requte et de rponse sont implmentes partir des schmas existants.

4. Reliez le schma de requte au schma de rponse : cliquez sur le champ in, gauche et dposez-le dans
l'expression out de la rponse, dans la table de droite.

5. Modifiez l'expression par dfaut envoyer. Du ct droit, sous Expression, cliquez sur la valeur
HelloServiceRequest et cliquez sur le bouton [...] ct. Modifiez l'expression (correspondant un nom) en
cliquant dans le champ et ajoutez "Hello " + avant et +"!" aprs.

Cliquez sur OK. Vous pouvez voir l'expression mise jour, droite. Cliquez sur OK pour retourner la
fentre de cration de Jobs.

6. Afin d'obtenir plus d'informations concernant l'excution du Job, ajoutez un composant de log. Vous pouvez
simplement chercher le composant tLog dans la Palette et glisser un tLogRow de la Palette. Dposez-le sur
le lien Response, entre le composant tXMLMap_1 et tESBProviderResponse_1.

Guide de prise en main de Talend ESB 35


Construire un service de donnes simple SayHello

L'implmentation de l'opration SayHelloServiceOperation est termine.

Excuter le service dans le Studio Talend

Assurez-vous rapidement que cette partie fonctionne en cliquant sur l'onglet Run (Job SayHello...) puis sur le
bouton Run.

Cela construit le Job et la sortie de log affiche que le service Web s'est vu assigner le port 8090 et a t publi
pour que les autres services puissent l'utiliser.

Slectionnez et copiez "http://localhost:8090/services/SayHelloService" pour un usage ultrieur.

Dans le Studio Talend vous pouvez tester chaque opration de Service implmente individuellement dans un Job Design
afin de vrifier que l'implmentation est correcte. Si vous souhaitez tester le service entier avec diffrentes oprations, vous
devez exporter le service et le dployer dans le conteneur d'excution. Il n'est pas possible de tester un service avec diffrentes
oprations dans le Studio Talend.

3.1.1.2. Consommateur du service SayHello


Dans cette section, vous allez apprendre comment crer le consommateur du service SayHello et comment appeler
le service avec ce consommateur.

36 Guide de prise en main de Talend ESB


Construire un service de donnes simple SayHello

Crer le consommateur du service SayHello

1. Pour tester le service, vous pouvez galement crer un nouveau Job consommateur. Cliquez-droit sur Job
Designs et slectionnez Create Job. Dans le champ Name, saisissez SayHelloConsumer et, dans le champ
Purpose saisissez l'objectif Demo. Cliquez sur Finish.

2. Dans l'onglet [Job SayHelloConsumer 0.1], cherchez le composant tFixedFlowInput dans la Palette, puis
glissez-le et dposez-le dans l'espace de modlisation graphique. De la mme manire, glissez-dposez un
tXMLMap, un tESBConsumer et deux tLogRow, comme expliqu ci-dessous.

Le composant tFixedFlowInput gnre autant de lignes et de colonnes que vous le souhaitez l'aide de
variables de contexte et le tESBConsumer appelle une mthode spcifie depuis le service Web invoqu et
retourne une classe, selon les paramtres.

3. Configurez les composants. Double-cliquez sur le tFixedFlowInput_1 et, dans l'onglet Component,
slectionnez Use Inline Table. Cliquez sur le bouton [...] ct du champ Edit schema pour ouvrir la fentre
de modification de schma.

Dans cette fentre, cliquez sur le bouton [+] pour ajouter un argument de type String et renommez
newColumn en Name puis cliquez sur OK pour fermer la fentre.

4. Retournez dans l'onglet Component du tFixedFlowInput_1, cliquez sur le bouton [+] pour ajouter des lignes
d'exemple et remplacez successivement le texte newLine par Peter, Alice et Bob.

Guide de prise en main de Talend ESB 37


Construire un service de donnes simple SayHello

Ce sont les donnes d'exemple que le consommateur va envoyer au service SayHelloService.

5. Dans le Job Job SayHelloConsumer 0.1, reliez les composants comme prcdemment, en cliquant-droit et
en glissant le lien tFixedFlowInput_1 > row > main sur le tXMLMap_1. Cliquez-droit sur le tXMLMap_1,
slectionnez le lien Row et dposez le bout du lien sur le tESBConsumer_1. Nommez cette connexion
Request (cliquez sur Yes pour rcuprer le schma du composant cible).

6. Double-cliquez sur le tXMLMap afin de le configurer comme prcdemment. A droite, cliquez sur
payload > Import From Repository. Dans l'assistant [Metadata] qui s'ouvre, naviguez de File XML
SayHelloServiceOperationRequest 0.1 et slectionnez cet lment. Cela vous permet d'appeler l'opration
de service. Cliquez sur OK.

7. Cliquez et dposez le champ Name, gauche sur le paramtre in droite puis cliquez sur OK pour retourner
l'cran principal.

8. Configurez les sorties des rponses. Cliquez-droit sur le tESBConsumer_1, slectionnez Row > Response
et dposez le lien sur le composant tLogRow_1, pour que les rponses passent dans ce composant. De la
mme manire, cliquez-droit sur le tESBConsumer_1, slectionnez Row > fault et dposez le lien sur le
tLogRow_2 afin que les erreurs passent dans ce composant.

38 Guide de prise en main de Talend ESB


Construire un service de donnes simple SayHello

La configuration du Job consommateur est termine.

Le tFixedFlowInput gnre Peter, Alice et Bob, qui sont passs du tXMLMap au tESBConsumer, qui
effectue les invocations respectives sur le fournisseur cible.

Excuter le consommateur

1. Indiquez au consommateur l'endpoint du WSDL du Service. Dans l'onglet Component du composant


tESBConsumer, modifiez l'endpoint afin de rfrencer le bon service. Cliquez sur le bouton [...] ct de
Service Configuration. La fentre de configuration du WSDL s'ouvre. Collez "http://localhost:8090/
services/SayHelloService" pour remplacer l'adresse du service, ce qui donne l'adresse complte
suivante : "http://localhost:8090/services/SayHelloService?WSDL". Cliquez sur le bouton de
rafrachissement (flches jaunes), droite, pour charger l'information. Cliquez sur Finish.

2. Excutez le Job consommateur. Cliquez sur l'onglet Run (Job SayHelloConsumer) puis sur le bouton Run.
Le Job se construit et s'excute et les trois noms s'affichent dans un message Hello dans la console.

Guide de prise en main de Talend ESB 39


Construire un service de donnes simple SayHello

Vous avez termin la cration et l'excution d'un consommateur et d'un fournisseur de service SayHello dans le
Studio Talend.

3.1.1.3. Exporter le service et l'excuter dans un conteneur de


Talend Runtime
Dans cette section, vous allez apprendre exporter le service SayHello pour l'excuter dans un conteneur OSGi,
le conteneur de Talend Runtime.

1. Avant d'exporter le service, dmarrez un conteneur de Talend Runtime et assurez-vous que tous les Services
d'Infrastructures sont dmarrs, comme dcrit dans Dmarrer Talend Runtime.

2. Pour les utilisateurs des versions Enterprise ou Platform souhaitant voir, dans les Dashboards ESB de Talend
Administration Center, les vnements Service Activity Monitoring et Service Locator gnrs lors de
l'excution du cas d'usage SayHello, assurez-vous de dmarrer ces Dashboards comme dcrit dans Dmarrer
les tableaux de bord ESB.

3. Pour les utilisateurs des versions Enterprise ou Platform souhaitant utiliser les Dashboards ESB, vous devez
configurer certains paramtres avant l'export du service. Sous Services, cliquez-droit sur SayHelloService
0.1 et slectionnez ESB Runtime Options. Dans la bote de dialogue, cochez les cases Use Service Activity
Monitoring et Use Service Locator.

40 Guide de prise en main de Talend ESB


Construire un service de donnes simple SayHello

4. Exportez le service. Sous Services, cliquez-droit sur SayHelloService 0.1 et slectionnez Export Service.
Dans la fentre [Save As], spcifiez le dossier souhait. Cliquez sur Finish.

Le processus construit et exporte le service en tant que fichier SayHelloService-0.1.kar.

5. Copiez le fichier SayHelloService-0.1.kar et collez-le dans le rpertoire deploy du conteneur de Talend


Runtime. Le service dmarre directement.

Les utilisateurs des versions Enterprise ou Platform peuvent galement dployer le service via l'application
Web Talend Administration Center. Pour plus d'informations, consultez Publier et dployer partir de Talend
Administration Center.

6. Puisque l'environnement de chargement est dynamique, le service dmarre automatiquement. Pour le voir
dans la fentre du conteneur de Talend Runtime, saisissez la commande list dans l'invite de commande.

7. Pour vrifier que le service est bien dploy, allez la page http://localhost:8040/services. Le service
SayHelloService est list.

Guide de prise en main de Talend ESB 41


Accder aux vnements dans les Dashboards ESB

8. Vrifiez qu'il fonctionne, en dmarrant le consommateur.

Le port sur lequel s'excute le service a t modifi et utilise le port du conteneur de Talend Runtime, par
dfaut 8040, vous devez donc changer le port. Sous Job Designs, ouvrez le Job SayHelloConsumer 0.1.
Cliquez sur le composant tESBConsumer_1. Cliquez sur l'onglet Component.

9. Cliquez sur le bouton [...] ct de Service configuration pour ouvrir la fentre des paramtres du WSDL.

10. Mettez jour le numro du port afin d'utiliser le port du conteneur de Talend Runtime port - changez 8090
en 8040 et cliquez sur le bouton de rafrachissement.

11. Excutez le Job consommateur, comme prcdemment, l'aide du bouton Run. La sortie est la mme que
prcdemment.

12. Si vous regardez la sortie du conteneur de Talend Runtime, vous pouvez voir que les messages Hello gnrs
par le serveur s'excutent dans le conteneur.

Vous avez cr un consommateur et un service simple SayHello, les avez excut dans le Studio Talend puis vous
avez excut le service dans le conteneur de Talend Runtime.

3.1.2. Accder aux vnements dans les Dashboards


ESB
Pour les utilisateurs des versions Enterprise ou Platform, une fois que vous avez dploy le service
SayHelloService, avec les options Service Activity Monitoring et Service Locator actives, et que vous avez fait
une requte l'aide de SayHelloConsumer, vous pouvez voir les vnements dans les Dashboards ESB de Talend
Administration Center.

Dans l'application Web Talend Administration Center, cliquez sur Monitoring > Logging dans l'arborescence
du menu :

42 Guide de prise en main de Talend ESB


Accder aux vnements dans les Dashboards ESB

Pour accder aux logs des vnements des endpoints des services, cliquez sur le Dashboard ESB Locator
Endpoints :

Pour accder aux logs des vnements de l'activit des services, cliquez sur le Dashboard ESB SAM :

Guide de prise en main de Talend ESB 43


Exemple SayHelloRoute

Pour plus d'informations sur les Dashboards ESB, consultez Accder aux logs des vnements ESB dans Talend
Administration Center.

3.1.3. Exemple SayHelloRoute


Dans cet exemple, vous allez apprendre tendre vos consommateur et producteur du service SayHello. Vous
avez deux instances du fournisseur et, l'aide de la perspective Mediation, vous allez crer une Route filtrant les
messages Hello selon leur nom, afin que les messages contenant le nom Alice aillent dans un fournisseur et les
messages contenant d'autres noms aillent dans un second fournisseur.

Vous allez excuter le consommateur depuis le premier exemple et afficher les messages provenant du
consommateur, routs par le bon service.

3.1.3.1. Crer la Route


1. Passez de la perspective Integration la perspective Mediation en cliquant sur Mediation, dans le coin
suprieur droit.

2. Crez une nouvelle Route en cliquant-droit sur Routes > Create Route. Nommez-la SayHelloRoute, dans le
champ Name et saisissez son objectif, Demo, dans le champ Purpose, puis cliquez sur Finish.

44 Guide de prise en main de Talend ESB


Exemple SayHelloRoute

L'onglet Route SayHelloRoute 0.1 s'ouvre.

3. Vous pouvez voir que la Palette est diffrente de celle de la perspective Integration. Vous allez crer
une route typique base sur le contenu, glisser-dposer des composants depuis la Palette dans l'espace de
modlisation graphique.

Le message de la requte provient du consommateur, glissez-dposez le composant Messaging > cCXF, qui
intercepte les messages en provenance des endpoints de serveur.

Comme vous allez crer une route base sur le contenu, glissez-dposez un composant cMessageRouter, de
la famille Routing, pour router les messages selon les conditions dfinies.

Ajoutez deux cCXF, de la famille Messaging, pour les deux services cible.

Le fait d'avoir plusieurs composants cCXF nomms de la mme manire dans une Route n'est pas support.

Il est recommand de nommer chaque composant par un nom unique afin de mieux identifier son rle au sein de la
Route.

Des noms en doublon peuvent poser problme lors de la gnration de code de certains composants.

4. Pour terminer l'implmentation, ajoutez quelques paramtres. Cliquez sur le cCXF_1, puis sur l'onglet
Component :

Si vous utilisez Talend Open Studio for ESB pour la premire fois, il vous est demand d'installer des
bibliothques externes dans le Studio pour pouvoir utiliser des composants comme le cCXF. Suivez les
instructions et installez les bibliothques.

Guide de prise en main de Talend ESB 45


Exemple SayHelloRoute

Dans le champ Address, collez l'adresse du service prcdent "http://localhost:8040/services/


SayHelloService" et changez le numro du port en 8042, puisque le nouveau service coute sur ce port.
L'adresse du nouveau service est "http://localhost:8042/services/SayHelloService".

Dans le champ Wsdl File, spcifiez l'URL du WSDL du service original. Utilisez l'adresse http:// pour
obtenir directement les informations du service que vous venez de dployer. Les informations sont
disponibles l'adresse "http://localhost:8040/services/SayHelloService?WSDL", pour les trois
services.

Dans la liste Dataformat, slectionnez PAYLOAD, puisque vous souhaitez effectuer une action sur le
corps du message.

A tout moment, vous pouvez sauvegarder les informations en slectionnant File > Save ou en cliquant sur l'icne Save
dans le coin suprieur gauche.

5. Rptez l'tape prcdente pour les autres composants : mais, pour le cCXF_2, modifiez le numro du port
dans le champ Address en 8040 et, pour le cCXF_3 changez le numro du port, dans le champ Address
en 8041.

En rsum, vous crez une requte sur le port 8042 (cCXF_1), vous l'envoyez au port 8040 (cCXF_2) ou
8041 (cCXF_3), selon le contenu du message.

6. Reliez les composants. Connectez le cCXF_1 au cMessageRouter_1 : cliquez-droit sur le cCXF_1,


slectionnez Row > Route et dposez le lien sur le cMessageRouter_1.

7. Crez un lien Trigger > When pour le premier service : cliquez-droit sur cMessageRouter_1, slectionnez
Trigger > When et dposez le lien sur le cCXF_2.

8. De la mme manire, ajoutez un lien Trigger > Otherwise du cMessageRouter_1 au cCXF_3 : cliquez-
droit sur le cMessageRouter_1, slectionnez Trigger > Otherwise et dposez le lien sur le cCXF_3. La
Route ressemble ceci :

46 Guide de prise en main de Talend ESB


Exemple SayHelloRoute

9. Configurez la condition When : cliquez-droit sur le lien when1, pour ouvrir une bote de dialogue.

Dans la liste Type, slectionnez simple. Dans le champ Condition, saisissez "${bodyAs(String)}
contains 'Alice'".

De cette manire, les messages contenant le nom Alice dans leur corps sont routs vers un service dans un
conteneur de Talend Runtime coutant le port 8040.

3.1.3.2. Excuter les services


1. Tout d'abord, vous devez avoir cr un conteneur de remplacement - consultez Crer un conteneur de
remplacement pour les dmos pour plus d'informations. Vous devez galement avoir dmarr tous ses
Services d'Infrastructures (tesb:start-all). Vrifiez que le conteneur par dfaut est bien en cours
d'excution - redmarrez-le si ncessaire et dmarrez le conteneur de remplacement.

2. Copiez tous les fichiers .kar du service cr (dans le rpertoire d'installation du produit ESB de Talend,/
container/deploy/SayHelloService-0.1.kar) et collez-les dans le dossier deploy du conteneur de
remplacement.

3. Pour tester les configurations, avant d'ajouter le consommateur, excutez la Route cre dans le studio.
Cliquez sur le bouton Run dans l'onglet Run (Job SayHelloRoute) :

Guide de prise en main de Talend ESB 47


Exemple SayHelloRoute

Cela vous permet de vrifier que les informations de configuration de CXF ont une syntaxe correcte.
L'excution donne une sortie ne contenant aucune ligne, ce qui reflte le flux des messages et vous fait
comprendre que les parties se connectent. Laissez la Route s'excuter.

Si vous avez des erreurs de syntaxe, cliquez sur chaque composant individuellement et examinez son contenu dans
l'onglet Component. Vous pouvez commencer par vrifier que les guillemets doubles sont bien l o il faut et que
les numros de ports sont corrects.

4. Retournez au consommateur pour excuter la dmo. Cliquez sur la perspective Integration, dans le coin
suprieur droit. Ouvrez le Job SayHelloConsumer 0.1. Mettez jour le numro de port : cliquez sur
l'onglet Component du composant tESBConsumer, puis sur le bouton [...] ct de Service Configuration.
Modifiez le numro de port en 8040, et cliquez sur le bouton de rafrachissement, afin de rcuprer
les informations du WSDL. Mettez jour l'endpoint pour avoir le mme que pour la Route - http://
localhost:8042/services/SayHelloService.

5. Envoyez une requte en excutant le Job consommateur : cliquez sur l'onglet Run (Job SayhelloConsumer)
puis sur le bouton Run. Hello Peter, Hello Alice et Hello Bob s'affichent dans la sortie consommateur, comme
prcdemment. Vous pouvez constater, dans l'espace de modlisation graphique, que trois lignes ("3 rows"),
c'est--dire les trois messages, sont passes au premier tLogRow. Aucune ligne ne contient d'erreur.

48 Guide de prise en main de Talend ESB


Exemple SayHelloRoute

6. Dans l'onglet Route SayHelloRoute 0.1, vous pouvez constater qu'un message est pass au fournisseur
cCXF_2 et que deux messages sont passs au fournisseur cCXF_3.

7. Si vous regardez la sortie des deux conteneurs, vous pouvez constater que les messages ont bien t routs.
Voici la sortie du premier conteneur :

Voici la sortie du second conteneur :

La dmo SayHelloRoute est termine.

3.1.3.3. Exporter les Routes


Vous pouvez exporter les Routes en tant que fichiers .kar pour le moteur d'excution ESB. Dans la perspective
Mediation, sous le nud Routes, cliquez-droit sur SayHelloRoute 0.1 et slectionnez Build Route.

Guide de prise en main de Talend ESB 49


Construction et dploiement de Services REST dans le Studio

Spcifiez un chemin pour le fichier .kar.

La capture d'cran affiche la Route en cours d'export vers le rpertoire /container/deploy dans Talend Runtime
pour la dployer directement, mais elle peut galement tre stocke ailleurs et copie ultrieurement dans le
rpertoire de dploiement.

3.2. Construction et dploiement de Services


REST dans le Studio
Cette section vous permet de commencer utiliser le Studio Talend en vous expliquant comment construire un
service REST simple d'exemple.
Si seul le dveloppement ESB bas Java vous intresse, vous pouvez passer cette section et reprendre Construction et
dploiement de Services de donnes et Routes l'aide de Java.

Les tapes de la dmo REST sont les suivantes :

1. Installez le logiciel, comme dcrit dans Tlchargement et installation du logiciel et excutez-le, comme
expliqu dans Dmarrer le logiciel.

Vous devez au moins avoir dmarr le Studio Talend et Talend Runtime.

2. Construisez un service REST simple explorant les donnes d'une table d'une base de donnes simple contenant
des informations au sujet d'employs.

50 Guide de prise en main de Talend ESB


Construire un service REST simple

Pour la dmo, le scnario suivant utilise un simple composant tFixedFlowInput au lieu d'un composant de
connexion une base de donnes, mais vous pouvez adapter votre base de donnes si vous le souhaitez.

3. Dployez le service REST dans un conteneur de Talend Runtime.

4. Construisez un consommateur simple REST envoyant une requte au service.

Cette section vous fournit assez d'informations pour crer et excuter la dmo. Pour avoir une vue globale de l'interface du
Studio Talend, consultez le Guide utilisateur du Studio Talend.

Pour plus d'informations concernant les composants spcifiques mentionns dans cette dmo, consultez le Guide de rfrence
des Composants Talend.

3.2.1. Construire un service REST simple


Cette section fournit des instructions tape par tape pour construire le fournisseur de service REST. A la diffrence
des services SOAP, construits via un assistant [Service], les services REST sont construits via l'assistant [Job
Design] du Studio Talend.

Dans cette section, vous allez crer :

1. un fournisseur de service REST simple interrogeant les donnes des employs. Consultez Crer un fournisseur
de service.

2. un second mapping REST pour interroger un employ spcifique via son ID. Consultez Ajouter un nouveau
mapping au service.

3.2.1.1. Crer un fournisseur de service


Dans cette section, vous allez crer un service REST donnant accs une liste d'employs ainsi qu' leurs donnes.
Pour plus d'informations, consultez Support des services Web.

Crer le Job
1. Pour crer le service, cliquez-droit sur Job Designs dans le menu de gauche puis slectionnez Create Job.

Guide de prise en main de Talend ESB 51


Construire un service REST simple

2. Saisissez le nom (EmployeeService) dans le champ Name, l'objectif (demo) dans le champ Purpose et une
description du service, puis cliquez sur Finish pour retourner l'cran principal.

L'cran principal affiche maintenant un onglet Job EmployeeService 0.1.

3. Dans ce nouveau Job, vous allez construire le service REST. Par exemple, rechercher les composants
tRESTRequest et tRESTResponse dans la Palette et dposez-les dans l'espace de modlisation graphique.

De la mme manire, glissez-dposez un tFlowToIterate, un tFixedFlowInput et un tXMLMap comme


ci-dessous.

Configurer la requte REST

1. Double-cliquez sur le composant tFixedFlowInput pour afficher sa vue Component, au bas de la fentre.
Cliquez sur le bouton [...] ct du champ Edit schema.

52 Guide de prise en main de Talend ESB


Construire un service REST simple

Dans l'assistant [Schema of tFixedFlowInput] qui s'ouvre, cliquez trois fois sur le bouton [+] au bas de
l'assistant afin d'ajouter trois colonnes. Configurez-les comme ci-dessus.

2. Dans la zone Mode, slectionnez l'option Use Inline Content (delimited file) et collez les informations
suivantes dans le champ Content :

1;Lyndon;Monroe
2;John;Johnson
3;Calvin;McKinley
4;Andrew;Truman
5;Richard;Taft
6;Andrew;Adams
7;Herbert;Buchanan
8;Bill;Carter
9;Ulysses;Jackson
10;Warren;McKinley

3. Double-cliquez sur le composant tRESTRequest pour afficher sa vue Component et configurer ses
proprits.

4. Dans le champ REST Endpoint, saisissez l'URI de l'endpoint partir duquel le service est disponible.
L'URI se compose gnralement d'un nom d'hte ou d'une adresse IP et d'un numro de port, spars
par le symbole ":". Saisissez le chemin relatif "/services". L'URI se prsente comme suit : http://
<IP_address>:<port_number>/services.

5. Cliquez sur le bouton [+] sous la table REST API Mapping afin d'ajouter un nouveau mapping.

6. Dans le champ HTTP Verb, laissez l'opration GET .

7. Dans le champ URI Pattern, saisissez le chemin XPath vers la racine de l'arborescence XML : "/employees".

8. Cliquez dans le champ Output Flow pour afficher le bouton [...] et cliquez sur ce bouton.

L'assistant [Give the name for the schema] s'ouvre.

9. Dans le champ Schema Name, nommez le schma getEmployees et cliquez sur OK.

Un nouvel assistant s'ouvre, dans lequel vous pouvez dfinir les colonnes du schma que vous allez crer.

10. Comme vous ne souhaitez pas dfinir de schma pour le moment, cliquez sur OK.

Le nouveau mapping getEmployees s'affiche dans la table REST API Mapping .

Guide de prise en main de Talend ESB 53


Construire un service REST simple

Relier les composants

1. Cliquez-droit sur le composant tRESTRequest, slectionnez Row > getEmployees dans le menu et cliquez
sur le tFlowToIterate.

2. Cliquez-droit sur le tFlowToIterate, slectionnez Row > Iterate dans le menu, puis cliquez sur le composant
tFixedFlowInput.

3. Cliquez-droit sur le tFixedFlowInput, maintenez le clic et dposez sur le composant tXMLMap.

4. Cliquez-droit sur le tXMLMap, maintenez le clic et dposez sur le tRESTResponse. Renommez le lien de
sortie en all lorsque la fentre s'ouvre [tXMLMap Output].

Configurer le tXMLMap

1. Double-cliquez sur le tXMLMap pour ouvrir son diteur.

2. Dans l'diteur, le flux d'entre de la table de base de donnes s'affiche gauche, dans la zone d'entre de
l'diteur. Dans la zone de sortie, droite, configurez le flux XML envoyer au tRESTResponse.

3. Dans la table de sortie all, cliquez-droit sur l'lment root et slectionnez Rename dans le menu pour le
renommer employees.

54 Guide de prise en main de Talend ESB


Construire un service REST simple

Dfinissez l'arborescence XML de l'lment racine employees.

4. Cliquez-droit sur employees et slectionnez Create Sub-Element dans le menu afin de crer un sous-lment
nomm employee contenant les informations relatives aux employs.

5. Cliquez-droit sur ce nouveau sous-lment employee et slectionnez As loop element dans le menu.

Une boucle est effectue chaque nouvel employ rencontr, pour rcuprer leurs informations individuelles.

6. Cliquez sur le bouton en forme de cl anglaise en haut de la table pour afficher les options de sortie et
slectionnez true dans la liste All in one.

Lorsque l'option All in one est configure true pour crer un seul document XML partir de toutes les
lignes d'entre du composant tXMLMap, cela permet d'envoyer une rponse complte lors de l'appel du
Service Web.

7. Mappez le flux d'entre et le flux de sortie, slectionnez la colonne id de la table row1 et dposez la colonne
sur le sous-lment employee de la table all. L'assistant [Selection] s'ouvre.

Guide de prise en main de Talend ESB 55


Construire un service REST simple

8. Dans l'assistant, slectionnez Create as attribute of target node et cliquez sur OK afin de valider.

Un mapping est cr entre la colonne id de la table employees de la base de donnes et l'attribut id de


l'arborescence XML employee.

9. Slectionnez les colonnes firstname et lastname de la table row1 et dposez-les sur le sous-lment
employee de la table de sortie all.

10. Dans l'assistant [Selection], slectionnez Create as sub-element of target node puis cliquez sur OK afin
de valider.

Le mapping entre le flux d'entre et le flux de sortie est termin.

11. Cliquez sur Apply puis sur OK pour fermer l'diteur et valider la configuration.

Excuter le Job
1. Appuyez sur F6 pour excuter le Job. Il est automatiquement enregistr avant excution. La vue Run s'affiche
au bas du studio et la console suit l'excution.

Le Service REST a t publi vers l'endpoint suivant http://127.0.0.1:8090/services et le fournisseur


coute sans discontinuer les requtes. Si vous souhaitez l'arrter, cliquez sur le bouton Kill de la vue Run.

2. Pour vrifier le service, allez l'adresse de l'endpoint o le service a t publi, http://127.0.0.1:8090/


services/employees.

56 Guide de prise en main de Talend ESB


Construire un service REST simple

3.2.1.2. Ajouter un nouveau mapping au service


Dans la section prcdente (Crer un fournisseur de service), vous avez vu comment crer un service
REST rcuprant toutes les informations des employs. Pour parcourir les informations de chaque employ
individuellement, ajoutez un mapping REST.

Modifier la requte REST

1. Dans le Job EmployeeService, double-cliquez sur le composant tRESTRequest pour afficher sa vue
Component et modifier ses proprits.

2. Cliquez sur le bouton [+] au bas de la table REST API Mapping pour ajouter un nouveau mapping.

3. Dans le champ HTTP Verb, laissez l'opration GET.

4. Laissez le champ URI Pattern, tel qu'il est.

Guide de prise en main de Talend ESB 57


Construire un service REST simple

5. Cliquez dans le champ Output Flow pour afficher le bouton [...] et cliquez sur ce bouton.

La bote de dialogue [Give the name for the schema] s'ouvre.

6. Dans le champ Schema Name, nommez le schma getEmployee et cliquez sur OK.

7. Dans l'assistant du schma, cliquez sur le bouton [+] pour ajouter une ligne la table.

Renommez la ligne id et changez son Type en Integer. Cliquez sur OK pour valider.

Le nouveau mapping getEmployee s'affiche dans la table REST API Mapping.

8. Dans le champ URI Pattern, saisissez le chemin XPath jusqu' la racine de l'arborescence XML suivi de la
variable d'identification de chaque employ : "/employees/{id}".

9. Dupliquez les composants tFixedFlowInput et tRESTResponse, en les copiant-collant.

10. Cliquez dans l'espace de modlisation graphique et commencez saisir le nom du composant tXMLMap,
l'endroit o vous souhaitez l'ajouter, dans le champ de texte qui apparat automatiquement. Double-cliquez
sur son nom pour l'ajouter dans l'espace de modlisation graphique.

58 Guide de prise en main de Talend ESB


Construire un service REST simple

Relier les composants

1. Cliquez-droit sur tRESTRequest, slectionnez Row > getEmployee dans le menu contextuel et cliquez sur
le second tXMLMap.

2. Cliquez-droit sur le second tFixedFlowInput, maintenez le clic et dposez sur le second tXMLMap.

3. Cliquez-droit sur le second tXMLMap, maintenez le clic et dposez sur le second tRESTResponse. Nommez
le lien de sortie single lorsque la fentre [tXMLMap Output] s'ouvre.

Configurer le second tXMLMap

1. Pour configurer le second tXMLMap, double-cliquez sur le composant afin d'ouvrir son diteur.

2. Slectionnez la colonne id de la table d'entre getEmployee et dposez-la sur la colonne id de la table row2.

Guide de prise en main de Talend ESB 59


Construire un service REST simple

Une flche violette est cre entre les colonnes de la table, reprsentant la jointure.

3. Dfinissez le schma XML envoyer au composant tRESTResponse. Pour ce faire, cliquez-droit sur le nud
de l'lment root dans la table single et slectionnez Rename dans le menu afin de le renommer employee.

4. Mappez le flux d'entre au flux de sortie. Pour ce faire, slectionnez la colonne id de la table row2 et dposez-
la sur l'lment employee de la table single. Une fentre [Selection] s'ouvre.

5. Dans lassistant, slectionnez Create as attribute of target node et cliquez sur OK pour valider.

6. Slectionnez les colonnes firstname et lastname de la table row2 et dposez-les sur l'lment employee de
la table de sortie single.

7. Dans l'assistant [Selection], slectionnez Create as sub-element of target node et cliquez sur OK pour
valider.

Le mapping entre le flux d'entre et le flux de sortie est termin.

8. Cliquez sur Apply et OK pour fermer l'diteur et valider la configuration.

60 Guide de prise en main de Talend ESB


Construire un service REST simple

Excuter le Job

1. Appuyez sur F6 pour excuter le Job. Le Job est automatiquement sauvegard avant excution. La vue Run
s'affiche au bas du Studio et la console suit l'excution.

Le Service REST a t publi vers l'endpoint suivant : http://127.0.0.1:8090/services et le fournisseur


coute sans discontinuer les requtes. Si vous souhaitez l'arrter, cliquez sur le bouton Kill de la vue Run.

2. Pour vrifier le service, allez l'adresse de l'endpoint o a t publi le Service : http://127.0.0.1:8090/


services/employees.

Guide de prise en main de Talend ESB 61


Construire un service REST simple

Cela ressemble la sortie du scnario prcdent.

3. Si vous ajoutez l'id d'un des employs la fin de l'URL : http://127.0.0.1:8090/services/


employees/1

62 Guide de prise en main de Talend ESB


Dployer le Service REST

Les informations concernant cet employ s'affichent.

3.2.2. Dployer le Service REST


Avant de pouvoir appeler le Service REST cr dans la section prcdente via un Job consommateur, vous devez
d'abord le dployer dans Talend Runtime.

Pour effectuer ce dploiement :

1. Assurez-vous que Talend Runtime est bien en cours d'excution. Pour ce faire, suivez les instructions
d'installation et de dmarrage dcrites dans Prise en main de la solution ESB de Talend.

2. Les utilisateurs des produits Enterprise et Platform souhaitant voir les vnements de Service Activity
Monitoring et Service Locator gnrs lors de l'excution du scnario relatif aux employs dans les
Dashboards ESB de Talend Administration Center doivent s'assurer de les dmarrer comme dcrit dans
Dmarrer les tableaux de bord ESB.

3. Les utilisateurs des produits Enterprise et Platform souhaitant utiliser les Dashboards ESB doivent configurer
certains paramtres avant de dployer le service. Dans le Job EmployeeService, double-cliquez sur le
composant tRESTRequest pour afficher sa vueComponent et modifier ses proprits.

Cochez les cases Use Service Locator et Use Service Activity Monitor.

4. Diffrents processus de dploiement sont possibles, selon le produit que vous utilisez et l'objectif de votre
dploiement :

5. Avec Talend Open Studio for ESB, vous pouvez dployer localement vos Services et Routes dans votre
moteur d'excution. Pour plus d'informations, consultez Dploiement en local (Talend Open Studio for ESB).

Le dploiement en local peut galement tre effectu via les Studios Enterprise et Platform. Cependant, si vous
faites un dploiement en local, il vous sera difficile de partager vos artefacts de Services et Routes (comme

Guide de prise en main de Talend ESB 63


Dployer le Service REST

cela peut tre fait lors de leur publication dans Artifact Repository) ou de programmer leur dploiement et
excution (comme dans Talend Administration Center).

6. Avec les produits Enterprise et Platform, tous les dveloppements de Services et Routes se font dans le Studio
par les dveloppeurs et les publications sont centralises dans Artifact Repository. Le dploiement dans le
conteneur de Talend Runtime s'effectue partir de Talend Administration Center par les Exploitants. Pour
plus d'informations, consultez Publier et dployer partir de Talend Administration Center.

7. Avec les produits Enterprise et Platform, vous pouvez galement publier vos Services et Routes dans Artifact
Repository directement depuis le Studio. Cela doit tre fait uniquement pour les snapshots, des fins de
tests rapides uniquement. Un rfrentiel ddi existe dj dans Artifact Repository pour ces snapshots : le
rfrentiel Snapshots. Pour plus d'informations, consultez Publier partir des studios Enterprise et Platform
Studio (test uniquement).

3.2.2.1. Dploiement en local (Talend Open Studio for ESB)


1. Dans la vue Repository du Studio Talend, sous le nud Job Designs, cliquez-droit sur EmployeeService
0.1 et slectionnez Build Job.

2. Dans l'assistant [Build Job], vrifiez que l'option OSGI Bundle For ESB est bien slectionne dans la liste
Select the Build type .

3. Cliquez sur le bouton [Browse...] pour exporter le service dans le dossier souhait.

4. Cliquez sur Finish. Le service est sauvegard en tant que fichier EmployeeService.jar.

64 Guide de prise en main de Talend ESB


Dployer le Service REST

5. Copiez le fichier EmployeeService.jar et collez-le dans le rpertoire deploy du conteneur de Talend


Runtime.

Comme le conteneur de Talend Runtime est un environnement de chargement dynamique, le service dmarre
automatiquement.

6. Dans la fentre du conteneur de Talend Runtime, saisissez list.

7. Pour vrifier le service, allez l'adresse de l'endpoint o le service a t publi : http://127.0.0.1:8040/


services/services/employees.

Guide de prise en main de Talend ESB 65


Dployer le Service REST

Vous pouvez galement crer un Job consommateur pour vrifier le service.

3.2.2.2. Publier et dployer partir de Talend Administration


Center
Pour publier et dployer vos artefacts de Services et Routes, suivez les tapes dcrites ci-dessous. En production,
vous devez utiliser le rfrentiel Releases de Artifact Repository au lieu du rfrentiel Snapshots utilis dans le
cadre des dmos.

En plus de Talend Runtime, assurez-vous que Talend Administration Center et les autres modules comme le
CommandLine et Talend Nexus Artifact Repository sont bien excuts, comme dcrit dans Prise en main de la
solution ESB de Talend.

Publier via Talend Administration Center


1. Dans Talend Administration Center, cliquez sur ESB Publisher dans le menu du gauche pour afficher la page
correspondante vous permettant de trouver les Services et Routes dvelopps et publis partir du Studio.

66 Guide de prise en main de Talend ESB


Dployer le Service REST

2. Cliquez sur le bouton Add en haut et renseignez le formulaire [Publish Task] qui s'affiche droite :

3. Cliquez sur Save. Le nouvel artefact s'affiche dans la liste, prt tre publi (Ready to publish).

4. Slectionnez-le et cliquez sur le bouton Publish. Le service sera publi directement dans Artifact Repository.

Vous pouvez galement dclencher la publication de votre artefact via l'onglet Trigger, au bas de la page
ESB Publisher.

Pour ce faire, slectionnez la tche cre et cliquez sur Add trigger... > Add CRON trigger dans l'onglet
Trigger au bas de la page et renseignez le formulaire Add Cron trigger qui s'affiche droite. Si vous n'tes
pas familiaris avec la syntaxe CRON, vous pouvez utiliser un assistant vous permettant de renseigner tous les
champs. Pour ouvrir l'assistant [Cron UI Trigger configuration], cliquez sur le bouton Open UI configurer.

Guide de prise en main de Talend ESB 67


Dployer le Service REST

Pour la dmo, utilisez simplement le bouton Publish afin de publier votre Job de service REST.

Une fois publi, le Service s'affiche dans Artifact Repository, sous le nud org/example. Vous pouvez
cliquer sur le bouton Open Artifact repository en haut de la page ESB Publisher. Cela ouvre l'application
Web Nexus. Vous pouvez voir votre artefact de Service dans Repositories > Snapshots :

68 Guide de prise en main de Talend ESB


Dployer le Service REST

Dployer via Talend Administration Center

Une fois votre Service publi dans Artifact Repository, vous pouvez le dployer dans le conteneur de Talend
Runtime.

1. Dans Talend Administration Center, cliquez sur ESB Conductor dans le menu gauche pour afficher la
page correspondante et vous permettre de trouver les Services et Routes publis dans Artifact Repository.

2. Cliquez sur le bouton Add eu haut et renseignez le formulaire Edition qui s'affiche droite :

Guide de prise en main de Talend ESB 69


Dployer le Service REST

3. Dans le champ Label de la zone Metadata, nommez votre tche de dploiement de service.

4. Dans la zone Feature, cliquez sur le bouton Select Feature pour ouvrir l'assistant [Select Feature from
Nexus repository] vous permettant de renseigner les champs de la zone.

70 Guide de prise en main de Talend ESB


Dployer le Service REST

5. Dans la liste Repository, slectionnez snapshots, parcourez votre arborescence jusqu' la Feature Employee
Service et slectionnez-la. Cliquez sur OK et toutes les informations de la Feature du Service sont renseignes
dans le formulaire.

6. Dans la zone Runtime Config, slectionnez le conteneur sur lequel dployer le Service dans la liste Server.

7. Cliquez sur Save. La tche de dploiement du Service s'affiche dans la liste.

8. Cliquez sur le bouton Deploy. Le Service est dploy dans le conteneur de Talend Runtime spcifi dans
la liste Server.

La valeur de la colonne Last Action passe de CREATED DEPLOYED et si vous saisissez list dans
l'invite de commande du conteneur de Talend Runtime, un nouveau bundle est list, Employee Service :

[ 289] [Active ] [Created ] [ ] [ 80] EmployeeService


(0.1.0.SNAPSHOT)

Guide de prise en main de Talend ESB 71


Dployer le Service REST

3.2.2.3. Publier partir des studios Enterprise et Platform Studio


(test uniquement)
A des fins de tests, vous pouvez galement publier vos Services et Routes dans Artifact Repository depuis le
Studio. Utilisez le rfrentiel Snapshots ddi de Artifact Repository.

En plus de Talend Runtime, assurez-vous que Talend Administration Center et les autres modules comme le
CommandLine et Talend Nexus Artifact Repository sont en cours d'excution, comme dcrit dans Prise en main
de la solution ESB de Talend.

1. Assurez-vous que les prfrences de connexion de Artifact Repository sont correctement configures dans le
Studio. Allez dans le menu et slectionnez Window > Preferences > Talend > Artifact Repository.

2. Dans la vue Repository du Studio Talend, sous le nud Job Designs, cliquez-droit sur EmployeeService
0.1 et slectionnez Publish.

3. Dans l'assistant [Publish Job into Artifact Repository], assurez-vous de publier votre Job dans le rfrentiel
Snapshots (cochez la case Publish as SNAPSHOT.

4. Cliquez sur Finish.

Le Service est disponible en tant qu'artefact dans le rfrentiel Snapshots de Talend Nexus Artifact
Repository. Cliquez sur le bouton Open Artifact repository en haut de la page ESB Publisher. Cela ouvre
l'application Web Nexus, et, dans Repositories > Snapshots, vous pouvez voir votre artefact de Service :

72 Guide de prise en main de Talend ESB


Construire un consommateur de Service REST simple

Vous pouvez y accder depuis l'application Talend Administration Center et le dployer dans votre conteneur de
Talend Runtime, comme dcrit dans Dployer via Talend Administration Center.

3.2.3. Construire un consommateur de Service REST


simple
Dans cette section, vous allez crer un consommateur envoyant une requte au Service REST.

Crer le Job

1. Cliquez-droit sur Job Designs dans le menu de gauche et slectionnez Create Job.

Guide de prise en main de Talend ESB 73


Construire un consommateur de Service REST simple

2. Saisissez le nom (EmployeeServiceConsumer), dans le champ Name, l'objectif dans le champ Purpose
(demo) et la description du Service, puis cliquez sur Finish pour retourner l'cran principal.

3. L'cran principal affiche un onglet Job EmployeeServiceConsumer 0.1.

4. Dans ce Job, construisez le consommateur du Service REST : recherchez le composant tRESTClient dans
la Palette et dposez-le dans l'espace de modlisation graphique.

5. De la mme manire, glissez-dposez un tFixedFlowInput, un tXMLMap et un tLogRow comme ci-


dessous.

Configurer la requte REST


1. Reliez le tFixedFlowInput au tRESTClient afin qu'il rcupre automatiquement le schma du composant
cible.

2. Double-cliquez sur le composant tFixedFlowInput pour afficher sa vue Component.

3. Cliquez sur le bouton [...] ct du champ Edit schema. L'assistant [Schema of tFixedFlowInput] s'ouvre.

74 Guide de prise en main de Talend ESB


Construire un consommateur de Service REST simple

4. Cliquez sur le bouton [+] au bas de l'diteur pour ajouter une nouvelle ligne nomme id, de Type Integer et
de longueur Length 2, comme ci-dessous.

Cliquez sur OK et propagez les modifications lorsqu'une fentre vous le propose.

5. Dans la zone Mode, slectionnez l'option Use Inline Table et cliquez trois fois sur le bouton [+] afin d'ajouter
trois lignes. Configurez-les comme suit :

6. Double-cliquez sur le tRESTClient pour afficher sa vue Component et configurer ses proprits.

7. Dans le champ URL, saisissez "http://127.0.0.1:8040/services".

8. Dans le champ Relative Path, modifiez le chemin en "/services/employees/"+row1.id.

Relier les composants

1. Cliquez-droit sur le tRESTClient, slectionnez Row > Response dans le menu contextuel et cliquez sur le
composant tXMLMap.

2. Cliquez-droit sur le tXMLMap, maintenez le clic et dposez sur le tLogRow. Nommez le lien de sortie all,
lorsque la bote de dialogue [tXMLMap Output] s'ouvre.

Guide de prise en main de Talend ESB 75


Construire un consommateur de Service REST simple

Configurer le tXMLMap

1. Double-cliquez sur ce composant pour ouvrir son diteur.

Dans l'diteur, le flux d'entre de la table de la base de donnes s'affiche gauche, dans la zone d'entre de
l'diteur. Dans la zone de sortie, droite, configurez le flux de sortie XML envoyer au tLogRow.

2. Dans l'arborescence XML d'entre row2, cliquez-droit sur l'lment root et slectionnez Rename dans le
menu afin de le renommer employee. Dfinissez l'arborescence XML de l'lment racine employee, qui
contiendra toutes les informations des employs.

3. Cliquez-droit sur employee et slectionnez Create Attribute dans le menu afin de crer un attribut nomm
id, dans l'assistant [Create New Attribute] qui s'ouvre.

4. Cliquez-droit sur employee nouveau et slectionnez Create Sub-Element dans le menu, afin de crer un
nouveau sous-lment nomm firstname dans l'assistant [Create New Element] qui s'ouvre.

Rptez cette tape afin de crer un autre sous-lment nomm lastname.

5. Mappez le flux d'entre au flux de sortie, slectionnez la colonne statusCode, l'attribut id et les lments
firstname et lastname, dans l'arborescence XML row2 et dposez-les dans la table de sortie all.

76 Guide de prise en main de Talend ESB


Construire un consommateur de Service REST simple

Le mapping entre le flux d'entre et le flux de sortie est termin.

6. Cliquez sur Apply puis sur OK pour fermer l'diteur et valider la configuration.

7. Double-cliquez sur le tLogRow pour afficher sa vue Component et configurer ses proprits.

8. Cliquez sur le bouton Sync columns pour rcuprer le schma du composant tXMLMap.

9. Dans la zone Mode, slectionnez l'option Table .

Excuter le Job

Appuyez sur F6 pour excuter le Job. Il est automatiquement enregistr avant excution. La vue Run s'affiche
au bas du Studio et la console suit l'excution.

Guide de prise en main de Talend ESB 77


Accder aux vnements dans les Dashboards ESB

3.2.4. Accder aux vnements dans les Dashboards


ESB
Les utilisateurs des produits Enterprise et Platform, une fois le service REST Employee dploy avec les options
de Service Activity Monitoring et Service Locator actives et interrog via le Job EmployeeConsumer, peuvent
voir les vnements dans les Dashboards ESB de Talend Administration Center.

Dans l'application Web Talend Administration Center, cliquez sur Monitoring > Logging dans l'arborescence :

Pour accder aux logs des vnements concernant les endpoints des services, cliquez sur le dashboard ESB
Locator Endpoints :

78 Guide de prise en main de Talend ESB


Accder aux vnements dans les Dashboards ESB

Pour accder aux logs des vnements concernant l'activit des services, cliquez sur le dashboard ESB SAM :

Pour voir d'autres affichages des Dashboards ESB, consultez Accder aux logs des vnements ESB dans Talend
Administration Center.

Guide de prise en main de Talend ESB 79


Construction et dploiement de Services de donnes et Routes l'aide de Java

3.3. Construction et dploiement de Services


de donnes et Routes l'aide de Java
Cette section dcrit la version la plus simple de la dmo Rent-a-Car.

A travers cet exemple, vous allez apprendre :

compiler et construire des services Apache CXF (Rent-a-Car).

dmarrer le conteneur de Talend Runtime (conteneur OSGi Talend).

dployer les services l'aide de commandes dans la console du conteneur de Talend Runtime.
Par dfaut, toutes les dmos Rent-a-Car demos sont faites avec JMX.

Le code de la dmo Rent-a-Car peut tre construit avec diffrentes options (diffrents profils Maven) pour utiliser des
fonctionnalits supplmentaires. Ces fonctionnalits sont prsentes dans le chapitre suivant - cette section utilise les profils
de build par dfaut.

3.3.1. Dmo Rent-a-Car


Le scnario de cette dmo est un cas d'usage mtier commun : un exemple rel simplifi du domaine de la
location de voitures. Cela permet d'utiliser la fonctionnalit du service de gestion des relations clients (Customer
Relationship Management, CRM) pour fournir des informations concernant le client et le service de rservation
pour rserver une voiture.

Figure 3.1. Services et application cliente Rent-a-Car

3.3.1.1. Scnario de la dmo Rent-a-Car


Dans ce scnario, deux services principaux sont prsents, ReservationService et CRMService. Vous allez crer
et orchestrer ces services l'aide d'une application cliente simple et graphique de location de voitures, l'application
Rent-a-Car appele "client de location" (Rental Client).

Le client de location fournit les fonctionnalits de base pour chercher les voitures disponibles au cours d'une
certaine priode de temps. Pour implmenter sa logique mtier, le client de location appelle des oprations du
Service CRM et du Service de Rservation, comme dans le diagramme ci-dessous.

1. La recherche prend en compte le statut (Silver, Gold, Platinum) du client slectionn. Les informations du
profil du client sont passes au service de rservation et utilises pour dterminer le rsultat de la recherche.

80 Guide de prise en main de Talend ESB


Dmo Rent-a-Car

2. Dans la liste des rsultats, vous pouvez slectionner la voiture rpondant le mieux aux besoins du client et
effectuer une rservation en cliquant sur le bouton Book.

3. A la fin du processus de soumission, la confirmation de la rservation s'affiche avec l'ID de la rservation.

Figure 3.2. Appels de services du client de location

3.3.1.2. Structure de la dmo Rent-a-Car


Cette section dcrit la structure du rpertoire de la dmo. Elle se compose de deux services et d'une application
de dmo, ainsi que de fichiers de support. Ils peuvent tre trouvs l'adresse suivante : <TalendRuntimePath>/
examples/talend/tesb/rent-a-car/.

Rpertoire ou nom de fichier Description


app-reservation/ Ce rpertoire contient les commandes et le client graphique simple permettant aux
utilisateurs d'invoquer des services tape par tape.
crmservice/ Le service de relations clients implmente les oprations getCRMInformation et
getCRMStatus.
reservationservice/ Le service de rservation implmente les oprations getAvailableCars,
submitCarReservation et getConfirmationOfReservation.
features/ Le rpertoire contient les fichiers des Features utiliser pour installer la dmo Rent-a-
Car dans le conteneur de Talend Runtime.
soapui Le rpertoire contient des fichiers de projets facultatifs pour l'outil soapUI.
pom.xml Ce fichier est utilis pour construire des processus Maven.
settings.xml Ce fichier contient des fonctionnalits avances (fonctionnalits qui ne sont pas utilises
dans les dmos simples. Pour plus d'informations, consultez Publier la dmo dans
Artifact Repository).

Guide de prise en main de Talend ESB 81


Dployer la dmo

Services et sous-rpertoires clients :

1. crmservice :

Rpertoire ou nom du fichier Description


common/ Ce rpertoire contient le fichier CRMService.wsdl utilis pour gnrer le code initial.
client/ Exemple d'une application client montrant un client CXF invoquant un endpoint CXF.
client-sl-sam/ Ce rpertoire contient le client CRMService activ utiliser dans les scnarios relatifs
aux modules Service Locator et Service Activity Monitoring.
client-sts/ Ce rpertoire contient le client CRMService activ utiliser dans les scnarios relatifs
au module Security Token Service.
client-all/ Ce rpertoire contient le client CRMService activ utiliser avec toutes les Features.
service/ Ce rpertoire contient l'implmentation du service CRMService.
service-endpoint-jmx/ Ce rpertoire contient l'endpoint simple CRMService.
service-endpoint-sl-sam/ Ce rpertoire contient l'endpoint CRMService activ utiliser dans les scnarios
relatifs aux modules Service Locator et Service Activity Monitoring.
service-endpoint-sts/ Ce rpertoire contient l'endpoint CRMService activ utiliser dans le scnario relatif
au module Security Token Service.
service-endpoint-all/ Ce rpertoire contient l'endpoint CRMService activ utiliser avec toutes les Features.

2. reservationservice a la mme structure, sauf que les rpertoires font rfrence au service
ReservationService.

3. app-reservation contient du code permettant de construire les commandes et le client graphique pour utiliser
les services ci-dessus :

Rpertoire ou nom du fichier Description


src/ Ce rpertoire contient le code source.
target/ Ce rpertoire est le rpertoire cible du build.
pom.xml Ce fichier est utilis par le processus de construction de Maven.

3.3.2. Dployer la dmo


Cette section dcrit comment dployer la dmo Rent-a-Car dans le conteneur de Talend Runtime. Cela implique
un certain nombre d'tapes, comme suit :

1. Crez un conteneur de remplacement - consultez Crer un conteneur de remplacement pour les dmos.

2. Dmarrez le conteneur principal - consultez Dmarrer Talend Runtime.

3. Construisez la dmo - consultez Construire la dmo.

4. Dployez les services de la dmo - consultez Dployer les services de la dmo.

5. Dployez l'application cliente de la dmo - consultez Dployer l'application cliente de la dmo.

3.3.2.1. Construire la dmo


Dans le reste de la documentation, <TalendRuntimePath> pointe vers le rpertoire o Talend Runtime est install.
Gnralement, le chemin complet est Runtime_ESBSE, TESB_SE-VA.B.C ou Talend-ESB-VA.B.C>, selon la version du
logiciel que vous utilisez (consultez Tlchargement et installation du logiciel). Pensez remplacer par le chemin qui vous
concerne.

82 Guide de prise en main de Talend ESB


Dployer la dmo

Pour Talend Runtime, les exemples se situent dans le rpertoire <TalendRuntimePath>/examples/talend.

A partir du dossier de base de l'exemple ESB, <TalendRuntimePath>/examples/talend/tesb/rent-a-car/,


le fichier pom.xml du projet Maven peut tre utilis pour construire la dmo.

1. Depuis une invite de commande, changez le rpertoire et saisissez le rpertoire racine de la dmo Rent-a-Car :

cd <TalendRuntimePath>/examples/talend/tesb/rent-a-car/

2. Excutez la commande Maven : (Maven est invoqu de la mme manire d'un terminal Linux ou d'une invite
de commande Windows)

mvn clean install

La dmo est construite et les bundles OSGi sont crs pour tre dploys dans le conteneur de Talend Runtime.

3.3.2.2. Dployer les services de la dmo


Les commandes dans ce document se rfrent la version "5.6.2" de la solution ESB de Talend. Si vous utilisez une autre
version, remplacez la chane de caractres de version .../5.6.2/... par le numro de votre version.

Les Features des services de la dmo doivent tre installes dans le conteneur principal et non dans le conteneur
de remplacement car elle s'attend ce que le port primaire 8040 s'ouvre pour les appels HTTP entrants.

1. Ajoutez l'emplacement de la Feature Rent-a-Car dans le conteneur principal de Talend Runtime


(<TalendRuntimePath>/container/).

Dans l'invite de commande, au niveau de karaf@trun>, saisissez la commande suivante :

features:addurl mvn:org.talend.esb.examples.rent-a-car/features/5.6.2/xml

Cette commande vous permet d'utiliser les bundles adquats directement depuis le rfrentiel Maven o ils
ont t installs par le build Maven.

2. Installez la Feature des services de la dmo Rent-a-Car dans le conteneur de Talend Runtime.

Saisissez la commande suivante :

features:install tesb-rac-services

3. Vrifiez que la Feature est bien installe.

Saisissez la commande suivante :

list

Vous pouvez voir les bundles de dmo dans la liste des bundles installs. Comme vous pouvez le voir ci-
dessous, les bundles CRMService et ReservationService sont installs :

ID State Blueprint Spring Level Name


[197] [Active ] [ ] [ ] [ 80] CRMService Common (5.6.2)
[198] [Active ] [ ] [ ] [ 80] ReservationService Common (5.6.2)
[199] [Active ] [ ] [ ] [ 80] CRMService Service (5.6.2)
[200] [Active ] [ ] [Started] [ 80] CRMService Service Endpoint JMX (5.6.2)
[201] [Active ] [ ] [ ] [ 80] ReservationService Service (5.6.2)
[202] [Active ] [ ] [Started] [ 80] ReservationService Service Endpoint JMX
(5.6.2)

Guide de prise en main de Talend ESB 83


Excuter la dmo

3.3.2.3. Dployer l'application cliente de la dmo


L'application de location de voitures de cette dmo peut tre dploye dans le mme conteneur que les services,
le conteneur primaire ou dans le conteneur de remplacement (qui simule un scnario plus raliste o le client et
les services sont dans diffrents conteneurs).

1. Si le conteneur de remplacement est utilis pour dployer l'application de dmo, ajoutez l'URL de la Feature de
la dmo Rent-a-Car dans ce conteneur. L'URL de la Feature doit tre ajoute une fois dans chaque conteneur,
mme si le conteneur est arrt et redmarr, l'URL de cette Feature reste en mmoire entre les excutions.
Cependant, si vous n'tes pas sr d'avoir install ou non une Feature, ajouter l'emplacement de la Feature
nouveau ne causera aucun problme.

Dans l'invite de commande du conteneur, saisissez la commande suivante :

features:addurl mvn:org.talend.esb.examples.rent-a-car/features/5.6.2/xml

Si vous avez dj excut un exemple prcdent, il est possible que vous deviez excuter la commande
suivante pour mettre jour les caches des bundles internes :

features:refreshurl

2. Installez l'URL de l'application du client de location dans le conteneur.

Saisissez la commande suivante dans la console :

features:install tesb-rac-app

3. Vrifiez que la Feature a bien t installe.

Saisissez la commande suivante :

list

Vous pouvez voir les bundles de dmo dans la liste des bundles installs :

ID State Blueprint Spring Level Name


[197] [Active ] [ ] [ ] [ 80] CRMService Common (5.6.2)
[198] [Active ] [ ] [ ] [ 80] ReservationService Common (5.6.2)
[199] [Active ] [ ] [Started] [ 80] CRMService Client (5.6.2)
[200] [Active ] [ ] [Started] [ 80] ReservationService Client (5.6.2)
[201] [Active ] [Created] [ ] [ 80] App Reservation (5.6.2)

3.3.3. Excuter la dmo


Voici la squence des vnements de la dmo Rent-a-Car :

1. Un client saisit des donnes prrequises dans un formulaire, notamment son nom, les dates de dbut et de fin
de location, le tarif souhait puis soumet sa requte.

2. L'application appelle le service CRMService afin de rcuprer les donnes clients et les informations de
statut des clients.

84 Guide de prise en main de Talend ESB


Excuter la dmo

3. Le client se voit prsenter une liste des voitures disponibles et en slectionne une dans la liste.

4. L'application appelle le service ReservationService afin de soumettre la demande de rservation puis affiche
un avis de confirmation de rservation au client.

3.3.3.1. Dmarrer l'application


Les services ReservationService, CRMService et app-reservation (le client) sont dploys dans Talend
Runtime. Dmarrez la console du conteneur de Talend Runtime comme dcrit prcdemment. Si les services de
la dmo et l'application de la dmo sont dploys dans deux conteneurs diffrents, les deux conteneurs doivent
tre dmarrs.

Il y a deux versions de l'application de location : la version graphique et la version en invite de commande. Dans
la console du conteneur ayant l'application de la dmo, vous pouvez voir :

---TALEND ESB: Rent-a-Car (OSGi) Commands---


car:gui (Show GUI)
car:search <user> <pickupDate> <returnDate>
(Search for cars to rent, date format yyyy/mm/dd)
car:rent <pos>
(Rent-a-Car listed in search result of carSearch)

Les sections suivantes traitent de l'interface graphique et de l'excution des commandes de l'application de location.

3.3.3.2. Utiliser l'interface graphique du client de location


1. Pour dmarrer l'interface graphique, saisissez, dans la console du conteneur de remplacement de Talend
Runtime, au niveau de karaf@trun> :

car:gui

2.

Slectionnez aebert dans la liste User et cliquez sur Find pour voir les rsultats. La liste des voitures
disponibles s'affiche.

Guide de prise en main de Talend ESB 85


Excuter la dmo

3.

Cliquez sur la ligne surligne ou slectionnez-en une autre et cliquez sur le bouton Reserve.

4. La page de confirmation s'ouvre :

86 Guide de prise en main de Talend ESB


Excuter la dmo

Cliquez sur Close pour arrter l'application.

3.3.3.3. Utiliser les invites de commandes


Vous pouvez faire exactement les mmes rservations en lignes de commande.

1. Pour chercher une voiture pour un utilisateur spcifique (aebert dans cet exemple), saisissez, dans la console :
car:search aebert 2014/07/17 2014/07/20

La liste des voitures disponibles s'affiche.


Found 5 cars.

Car details
1 VW Golf Standard 50.00 75.00 40.00
2 BMW 320i Sport 60.00 90.00 45.00
3 Mazda MX5 Sport 65.00 95.00 50.00
4 Lexus LX400 SUV 85.00 120.00 100.00
5 Mercedes E320 Delux 95.00 140.00 100.00

2. Dans la console, saisissez car:rent 2 afin de louer la deuxime voiture.

Guide de prise en main de Talend ESB 87


Dsinstaller la dmo

Vous pouvez voir la confirmation :


Your reservation is booked!

Reservation ID SGA-295484

Customer details
----------------
Name: Andrea Ebert
eMail: info@talend.de
City: Munich
Status: PLATINUM

Car details
-----------
Brand: BMW
Model: 320i

Reservation details
-------------------
Pick up date: 2011/07/17
Return date: 2011/07/20
Daily rate: 60.00
Weekend rate: 90.00
Credits: 210
Thank you for renting a car with Talend ESB :-)

3.3.4. Dsinstaller la dmo


Cette section dcrit comment dsinstaller la dmo, partir du conteneur et du conteneur de remplacement, si vous
en utilisez un.

Si vous souhaitez dsinstaller uniquement les services de la dmo, excutez cette commande, dans la console
du conteneur :

features:uninstall tesb-rac-services

Vous pouvez les rinstaller comme dcrit dans Dployer les services de la dmo.

Si vous souhaitez dsinstaller l'application de la dmo, excutez cette commande dans la console du conteneur :

features:uninstall tesb-rac-app

Vous pouvez rinstaller l'application comme dcrit ci-dessus.

Si vous souhaitez dsinstaller toutes les Features de la dmo, excutez les commandes suivantes dans la console
du conteneur :

features:uninstall tesb-rac-services

features:uninstall tesb-rac-app

features:uninstall tesb-rac-common

Saisissez features:list | grep tesb-rac pour vous assurer que toutes les Features ont t dsinstalles.
La console doit afficher ceci :

[uninstalled] [5.6.2 ] tesb-rac-common repo-0


[uninstalled] [5.6.2 ] tesb-rac-services repo-0
[uninstalled] [5.6.2 ] tesb-rac-app repo-0

88 Guide de prise en main de Talend ESB


Import de la dmo Java Rent-a-Car dans Eclipse

Vous pouvez galement supprimer l'URL de la Feature de la dmo Rent-a-Car du (des) conteneur(s).

Dans la console du conteneur, saisissez la commande suivante :


features:removeurl mvn:org.talend.esb.examples.rent-a-car/features/5.6.2/xml

3.4. Import de la dmo Java Rent-a-Car dans


Eclipse
Cette section, vous allez utiliser le plug-in Maven pour Eclipse ( http://maven.apache.org/plugins/maven-eclipse-
plugin/) afin de gnrer les fichiers du projet Eclipse de la dmo Rent-A-Car. (Le Guide Talend ESB Development
Guide, (en anglais), dcrit comment installer ce plug-in).

3.4.1. Construire les fichiers du projet


1. Allez dans le rpertoire de dmo de la solution ESB de Talend, <TalendRuntimePath>/examples/talend/
tesb/rent-a-car.

2. Si vous n'avez pas encore construit la dmo, excutez:


mvn clean install

3. Excutez :
mvn eclipse:eclipse

Les fichiers du projet Eclipse sont crs.

3.4.2. Importer dans Eclipse


Dans l'environnement de dveloppement d'Eclipse :

1. Dans la barre de menu, slectionnez File > Import.... L'assistant [Import] s'ouvre.

2. Slectionnez General > Existing Projects into Workspace puis cliquez sur Next.

3. Slectionnez Select root directory et cliquez sur Browse afin de renseigner l'emplacement du rpertoire
examples/talend/tesb/rent-a-car.

4. Dans la fentre [Import Projects], sous Projects, slectionnez le(s) projet(s) importer, puis cliquez sur
Finish.

Les projets d'exemple du produit ESB de Talend slectionns sont imports dans votre espace de travail Eclipse.
Vous pouvez voir le code source, le modifier et tirer parti de toutes les autres fonctionnalits Eclipse.

3.4.3. Excuter les exemples


Les exemples sont excuts l'aide de commandes Maven, dans une invite de commande. Si vous le souhaitez, des
plug-ins Maven existent pour excuter ces commandes Maven dans l'environnement de dveloppement intgr.

Guide de prise en main de Talend ESB 89


Excuter les exemples

Pour plus d'informations concernant le dveloppement dans l'ESB de Talend et Eclipse, consultez le Guide Talend
ESB Development Guide (en anglais).

90 Guide de prise en main de Talend ESB


Chapitre 4. Utilisation avance du
dploiement et de l'excution des Services et
gouvernance SOA
Ce chapitre vous permet d'utiliser des fonctionnalits avances de Talend Runtime, par exemple Service Locator,
Service Activity Monitoring, Security Token Service, etc. Il explique galement comment utiliser un logiciel de
gestion de rfrentiels pour le dploiement de services et de routes.

Les exemples de ce chapitre sont bass sur la dmo Java Rent-a-Car prsente dans Cas d'usage : dploiements
et excutions simples.

Guide de prise en main de Talend ESB


Dmo Rent-a-Car utilisant Service Locator et Service Activity Monitoring

4.1. Dmo Rent-a-Car utilisant Service


Locator et Service Activity Monitoring
Cette section dcrit comment utiliser les deux Features dans le cadre de la dmo Rent-a-Car :

le composant Service Locator pour enregistrer publiquement les endpoints de services,

Service Activity Monitoring (SAM) pour monitorer les appels de service, gnralement pour collecter des
statistiques d'utilisation et monitorer les erreurs.
Si vous avez souscrit l'une des ditions Enterprise ou Platform de Talend, une fonctionnalit graphique est fournie par
Talend Administration Center, pour voir les informations relatives Service Locator et Service Activity Monitoring. Pour
un aperu de Service Activity Monitoring dans Talend Administration Center, consultez Voir les vnements dans l'interface
de Service Activity Monitoring dans Talend Administration Center.

Consultez le Guide d'installation et de migration Talend ainsi que le Guide utilisateur de Talend Administration Center
pour plus d'informations.

Dans cette section, vous allez apprendre dployer la dmo Rent-a-Car dans le conteneur de Talend Runtime.
Cela implique un certain nombre d'tapes, comme celles dcrites dans la dmo simple Rent-a-Car.

1. Crez un conteneur de remplacement - consultez Crer un conteneur de remplacement pour les dmos.

2. Dmarrez le conteneur principal - consultez Dmarrer Talend Runtime.

3. Construisez la dmo - consultez Construire la dmo avec les modules Service Activity Monitoring et Service
Locator activs.

4. Vrifiez que les fonctionnalits des excutions prcdentes de la dmo ont t dsinstalles - consultez
Dsinstaller les Features prcdentes.

5. Dployez les services ESB de Talend - consultez Installer et dmarrer Service Locator et Service Activity
Monitoring .

Il est important pour la dmo Rent-a-Car que ces services soient installs dans le conteneur par dfaut
(utilisant le port 8040), car les fichiers de dmo sont configurs ainsi.

6. Dployez les services de la dmo et l'application client dans un conteneur - consultez Excuter la dmo dans
un conteneur pour gnrer des donnes de Service Activity Monitoring. Cette tape traite de la fonctionnalit
Service Activity Monitoring puisque Service Locator n'est que peu utilis dans ce scnario.

7. R-excutez la dmo avec les deux conteneurs, tout en arrtant un des services d'exemple. Cela vous permet
de comprendre le rle de Service Locator lors d'un failover de service (consultez Excuter la dmo dans deux
conteneurs - simuler un failover de serveur avec Service Locator) et de voir comment le client se connecte
un autre service, via cette fonctionnalit.

4.1.1. Installer et dmarrer Service Locator et Service


Activity Monitoring
Pour dmarrer Service Locator et Service Activity Monitoring pour la dmo Rent-a-Car, les modules doivent tre
installs et dploys dans le conteneur de Talend Runtime.

Si vous avez dmarr le conteneur de Talend Runtime et tous les Services d'Infrastructure comme dcrit dans
Dmarrer Talend Runtime, ces Features doivent avoir t dployes et dmarres via la commande tesb:start-
all.

Si vous souhaitez les dmarrer individuellement ou personnaliser leurs paramtres de configuration, consultez
Service Locator et Service Activity Monitoring.

92 Guide de prise en main de Talend ESB


Installer et dmarrer Service Locator et Service Activity Monitoring

4.1.1.1. Service Locator


Service Locator peut tre dmarr individuellement dans le conteneur de Talend Runtime, si vous saisissez cette
commande dans la console du conteneur principal

tesb:start-locator

Ses paramtres de configuration se situent dans le fichier <TalendRuntimePath>/container/etc/


org.talend.esb.locator.cfg. Voici un exemple :

# Configured zookeeper endpoints (divided by a comma if several instances


# uses). The service locator client will one by one pick an endpoint to
# connect to the service locator until a connection is established.
locator.endpoints=localhost:2181

# Endpoint prefix property is needed because we run services in


# a container where the endpoints is only relative to the container.
endpoint.http.prefix=http://localhost:8040/services
endpoint.https.prefix=https://localhost:9001/services

locator.strategy=defaultSelectionStrategy
locator.reloadAdressesCount=10

connection.timeout=5000
session.timeout=5000

Pour plus d'informations concernant la configuration des proprits de Service Locator consultez le Guide Talend
ESB Infrastructure Services Configuration Guide (en anglais).

4.1.1.2. Service Activity Monitoring


Le serveur de Service Activity Monitoring peut tre dmarr individuellement dans le conteneur de Talend
Runtime, si vous saisissez la commande suivante dans la console du conteneur principal :

tesb:start-sam

Le serveur de Service Activity Monitoring est dmarr. Vous pouvez vrifier l'URL dans votre navigateur :
http://localhost:8040/services/MonitoringServiceSOAP?wsdl. Elle doit lister les <wsdl:definitions>.

La commande tesb:start-sam dmarre la base de donnes Derby avec l'hte localhost et le port par dfaut 1527,
puis installe les Features tesb-datasource-derby et tesb-sam-server. Si vous utilisez une autre base de donnes
(par exemple MySQL, H2, Oracle), suivez les instructions de la DataSource and Service Activity Monitoring
Server installation/configuration dans le guide Talend ESB Infrastructure Services Configuration Guide (en
anglais).

Serveur de Service Activity Monitoring - Nouvelle cration de la base de


donnes active par dfaut

Lorsqu'un serveur Service Activity Monitoring est install dans Talend Runtime, par dfaut l'option
de nouvelle cration de la base de donnes est active. Consultez le fichier de configuration
org.talend.esb.sam.server.cfg. Il montre les erreurs dans la console pour chaque redmarrage du conteneur
("cant create table "). Pour viter cette erreur au dmarrage, modifiez la proprit db.recreate dans
org.talend.esb.sam.server.cfg en false (db.recreate=false) aprs avoir install le serveur de Service
Activity Monitoring.

Guide de prise en main de Talend ESB 93


Dsinstaller les Features prcdentes

Paramtres de configuration pour Service Activity Monitoring dans le


conteneur de Talend Runtime

Dans le conteneur de Talend Runtime, si vous souhaitez configurer des proprits pour accder au Service Activity
Monitoring (par exemple service.url), modifiez :

<TalendRuntimePath>/container/etc/org.talend.esb.sam.agent.cfg

4.1.2. Dsinstaller les Features prcdentes


1. Dmarrer le conteneur principal et celui de remplacement s'ils ne sont pas encore dmarrs.

2. Si vous avez dj utilis le conteneur pour excuter les exemples prcdents, assurez-vous que les Features des
exemples prcdents sont bien dsinstalles, notamment la Feature tesb-rac-common implicitement charge
comme dpendance. Sinon, l'installation des Features de l'exemple du Locator vont chouer. Si vous ne savez
pas si les Features prcdentes sont installes, saisissez les commandes suivantes dans les conteneurs :
features:uninstall tesb-rac-services

features:uninstall tesb-rac-common

Si vous avez install l'application de location Rent-a-Car dans ce conteneur, vous devez galement la
dsinstaller :
features:uninstall tesb-rac-app

Ces commandes permettent de dsinstaller les bundles restants de l'exemple prcdent.

3. Vous pouvez galement supprimer les Features dsinstalles de l'exemple prcdent, dans le conteneur :
features:removeurl mvn:org.talend.esb.examples.rent-a-car/features/5.6.2/xml

Cette commande supprime les Features du scnario simple du conteneur.

4.1.3. Construire la dmo avec les modules Service


Activity Monitoring et Service Locator activs
Pour construire la dmo, utilisez Maven avec les profils combins de Service Activity Monitoring et Service
Locator. Avant de construire la dmo, assurez-vous que les Features de Service Activity Monitoring et Service
Locator ont t actives dans votre conteneur de Talend Runtime.

1. Dans une invite de commande, modifiez le rpertoire en <TalendRuntimePath>/examples/talend/tesb/


rent-a-car.

Le fichier pom.xml est utilis par Maven pour construire la dmo.

2. Excutez la commande Maven sous Linux ou Windows :


mvn install -Pslsam

Excuter cette commande permet de construire la dmo avec les fonctionnalits requises et de crer les
bundles OSGi dployer dans le conteneur.

Ces modifications se font lorsque vous construisez les exemples avec l'Agent Service Activity Monitoring et
le module Service Locator activs :

94 Guide de prise en main de Talend ESB


Installer les Features des exemples Rent-a-Car

L'lment jaxws:features de l'Agent Service Activity Monitoring et le module Service Locator sont ajouts
au fichier Spring beans.xml du client et de l'endpoint de service, par exemple :

<import resource="classpath:META-INF/tesb/locator/beans-osgi.xml" />


<import resource="classpath:META-INF/tesb/agent-osgi.xml" />
...
<jaxws:features>
<bean class="org.talend.esb.servicelocator.cxf.LocatorFeature">
<property name="selectionStrategy"
value="randomSelectionStrategy"/>
</bean>
<ref bean="eventFeature"/>
</jaxws:features>

Le fichier MANIFEST.MF du client et de l'endpoint de service est mis jour par l'ajout des bundles suivants
dans la liste Require-Bundle : sam-common,sam-agent,locator.

4.1.4. Installer les Features des exemples Rent-a-Car

4.1.4.1. Installer les exemples dans le conteneur principal


1. Ajoutez l'URL de la Feature Rent-a-Car dans le conteneur de Talend Runtime principal
(<TalendRuntimePath>/container/).

Dans l'invite de commande, au niveau de (karaf@trun>), saisissez la commande suivante :

features:addurl mvn:org.talend.esb.examples.rent-a-car/features-sl-sam/5.6.2/xml

Mettez jour le numro de version "5.6.2" s'il est diffrent de celui de votre installation.

2. Si les exemples prcdents ont dj t installs, excutez la commande suivante :

features:refreshurl

3. Saisissez les commandes suivantes :

features:install tesb-rac-services-sl-sam

features:install tesb-rac-app-sl-sam

4. Utilisez la commande list afin de vrifier que tout est correctement install.

Par exemple :

[ 219] [Active ] [ ] [ ] [ 80] CRMService Common (5.6.2)


[ 220] [Active ] [ ] [ ] [ 80] ReservationService Common (5.6.2)
[ 221] [Active ] [ ] [ ] [ 80] CRMService Service (5.6.2)
[ 222] [Active ] [ ] [Started] [ 80] CRMService Service Endpoint Locator and
SAM (5.6.2)
[ 223] [Active ] [ ] [ ] [ 80] ReservationService Service (5.6.2)
[ 224] [Active ] [ ] [Started] [ 80] ReservationService Service Endpoint SL
and SAM (5.6.2)
[ 225] [Active ] [ ] [Started] [ 80] CRMService Client Locator and SAM
(5.6.2)
[ 226] [Active ] [ ] [Started] [ 80] ReservationService Client Locator and
SAM (5.6.2)
[ 227] [Active ] [Created ] [ ] [ 80] App Reservation (5.6.2)

Guide de prise en main de Talend ESB 95


Excuter la dmo dans un conteneur pour gnrer des donnes de Service Activity Monitoring

4.1.4.2. Installer les exemples dans le conteneur de remplacement


Le conteneur de remplacement n'est pas utilis lorsque vous excutez la dmo pour la premire fois, vous pouvez donc
l'arrter aprs l'installation des Features, si vous le souhaitez.

1. Dmarrez le conteneur de remplacement.

2. Dans la console du conteneur de remplacement, saisissez la commande :

features:addurl mvn:org.talend.esb.examples.rent-a-car/features-sl-sam/5.6.2/xml

3. Si les exemples prcdents ont dj t installs, saisissez :

features:refreshurl

4. Saisissez :

features:install tesb-rac-services-sl-sam

Installez uniquement ces Features et non tesb-rac-app-sl-sam.

5. Utilisez la commande list afin de vrifier que tout est correctement install. Par exemple :

[ 219] [Active ] [ ] [ ] [ 80] CRMService Common (5.6.2)


[ 220] [Active ] [ ] [ ] [ 80] ReservationService Common (5.6.2)
[ 221] [Active ] [ ] [ ] [ 80] CRMService Service (5.6.2)
[ 222] [Active ] [ ] [Started] [ 80] CRMService Service Endpoint Locator and
SAM (5.6.2)
[ 223] [Active ] [ ] [ ] [ 80] ReservationService Service (5.6.2)
[ 224] [Active ] [ ] [Started] [ 80] ReservationService Service Endpoint SL
and SAM (5.6.2)

4.1.5. Excuter la dmo dans un conteneur pour


gnrer des donnes de Service Activity Monitoring
Cette section dcrit comment dployer les services de la dmo et l'application cliente dans un conteneur : le
conteneur principal (consultez Excuter la dmo dans un conteneur pour gnrer des donnes de Service Activity
Monitoring), afin d'avoir un aperu de la fonctionnalit de Service Activity Monitoring. Le module Service Locator
n'est que peu utilis dans ce scnario, Vous n'avez donc pas besoin du conteneur de remplacement.

1. Avant d'excuter cette dmo, arrtez le conteneur de remplacement s'il est en cours d'excution. vous pourrez
le redmarrer la prochaine excution de la dmo.

2. Excutez l'application cliente de la dmo simple Rent-a-Car (consultez Excuter la dmo pour plus
d'informations) :

car:gui

3. Dans l'interface de l'application de location, cliquez sur Find.

Cette tape suffit la dmo. Vous pouvez voir son contenu dans la console du conteneur par dfaut :

###############################################
getCRMInformation() invoked ... request data:
org.talend.services.crm.types.LoginUserType@fc0795
###############################################
###############################################
getCRMInformation() invoked ... response data:
org.talend.services.crm.types.CustomerDetailsType@560854

96 Guide de prise en main de Talend ESB


Excuter la dmo dans un conteneur pour gnrer des donnes de Service Activity Monitoring

###############################################
###############################################
getAvailableCars() invoked ... request data:
org.talend.services.reservation.types.RESProfileType@a14297
###############################################
###############################################
getAvailableCars() invoked ... response data:
org.talend.services.reservation.types.RESCarListType@11ad529
###############################################

La console affiche les requtes et les rponses des services CRMService et ReservationService.

4.1.5.1. Voir les vnements dans l'interface de Service Activity


Monitoring dans Talend Administration Center
Aprs avoir excut la dmo Rent-a-Car, les utilisateurs des produits Enterprise et Platform peuvent monitorer les
activits des services via l'interface Service Activity Monitoring de Talend Administration Center :

4.1.5.2. Voir les vnements dans la base de donnes de Service


Activity Monitoring
Aprs excution de la dmo Rent-a-Car, les utilisateurs de Talend ESB Standard Edition et Talend Open Studio
for ESB peuvent monitorer l'activit des services via les tables EVENTS et EVENTS_CUSTOMINFO de la base
de donnes de Service Activity Monitoring l'aide de DbVisualizer (ou tout autre outil de base de donnes).

Pour vous connecter la base de donnes de Service Activity Monitoring, utilisez les paramtres suivants :
Database connection configuration (Default): DB
Driver: org.apache.derby.jdbc.ClientDriver
DB URL: jdbc:derby://localhost:1527/db
DB username: test
DB password: test

Guide de prise en main de Talend ESB 97


Excuter la dmo dans deux conteneurs - simuler un failover de serveur avec Service Locator

La connexion la base de donnes doit correspondre aux paramtres dfinis dans le fichier
<TalendRuntimePath>/etc/org.talend.esb.sam.server.cfg et la configuration de la source de donnes
rfrence, Derby (ds-derby) par dfaut, peut tre trouve dans le fichier <TalendRuntimePath>/etc/
org.talend.esb.datasource.derby.cfg.

Les donnes des tables EVENTS et EVENTS_CUSTOMINFO peuvent tre parcourues et monitores dans
DbVisualizer. Par exemple, les donnes de la table EVENTS, aprs excution de la dmo Rent-a-Car avec le
module Service Activity Monitoring activ, ressemblent ceci :

Pour plus d'informations concernant la dfinition du schma des tables, consultez les sections EVENTS Structure
et EVENTS_CUSTOMINFO Structure dans le Guide Talend ESB Infrastructure Services Configuration Guide
(en anglais).

4.1.6. Excuter la dmo dans deux conteneurs -


simuler un failover de serveur avec Service Locator
Dans cette section, vous allez apprendre r-excuter la dmo en utilisant deux conteneurs, tout en arrtant l'un
des services d'exemple dans l'un des deux conteneurs. Cela vous explique le rle du module Service Locator en
cas de failover de service (consultez Excuter la dmo dans deux conteneurs - simuler un failover de serveur avec
Service Locator) et comment le client peut se connecter un autre service, l'aide de cette fonctionnalit.

Figure 4.1. Illustration du failover de serveur

98 Guide de prise en main de Talend ESB


Excuter la dmo dans deux conteneurs - simuler un failover de serveur avec Service Locator

Les tapes sont les suivantes :

1. L'application de rservation recherche l'endpoint du service CRMService dans le module Service Locator.

2. Elle se connecte directement au service CRMService dans le conteneur principal.

3. Vous pouvez arrter le service CRMService.

4. L'application de rservation recherche automatiquement, nouveau, l'endpoint du service CRMService dans


le module Service Locator.

5. Elle se connecte directement au service CRMService dans le conteneur de remplacement.

4.1.6.1. Excuter la dmo


1. Excutez l'application de location nouveau en saisissant la commande car:gui dans la console du conteneur
par dfaut puis cliquez sur Find dans l'application. Pendant l'excution de l'application, vous pouvez voir les
mmes requtes et rponses que prcdemment.

2. Ne fermez pas l'interface de l'application, cliquez simplement sur Back pour retourner l'tape prcdente
de la rservation.

Simuler un chec de service

Simulez l'chec d'un service :

1. Dmarrez le conteneur de remplacement.

2. Dans le conteneur par dfaut, saisissez la commande list pour rcuprer les informations du bundle
CRMService et noter le numro du bundle de l'endpoint du service CRMService :

[ 222] [Active ] [ ] [ ] [ 80] CRMService Service Endpoint Locator and


SAM (5.6.2)

(Le numro, ici, 222, sera probablement diffrent dans votre console.)

3. Arrtez-le l'aide de la commande stop 222 (en saisissant le numro de votre bundle).

4. Cliquez sur le bouton Find dans l'interface de l'application pour activer l'appel du service CRMService.

Le service ReservationService fonctionne dans le premier conteneur et le service CRMService est utilis dans le
second conteneur.

Dans la console du conteneur principal :

###############################################
getAvailableCars() invoked ... request data:
org.talend.services.reservation.types.RESProfileType@1d510be
###############################################
###############################################
getAvailableCars() invoked ... response data:
org.talend.services.reservation.types.RESCarListType@13e49a8
###############################################

Le Locator passe au CRMService dans le second conteneur et, dans la console du conteneur de remplacement,
vous pouvez voir :

Guide de prise en main de Talend ESB 99


Accder aux vnements dans les Dashboards ESB

###############################################
getCRMInformation() invoked ... request data:
org.talend.services.crm.types.LoginUserType@1142653
###############################################
###############################################
getCRMInformation() invoked ... response data:
org.talend.services.crm.types.CustomerDetailsType@1e03fce
###############################################

4.1.7. Accder aux vnements dans les Dashboards


ESB
Pour les utilisateurs d'une version Enterprise ou Platform, une fois que vous avez dploy les Services Rent-a-Car
avec les options Service Activity Monitoring et Service Locator actives et interroges l'aide de l'application
client (la commande car:gui dans le conteneur principal), vous pouvez voir les vnements dans les Dashboards
ESB dans Talend Administration Center.

Dans lapplication Web Talend Administration Center, cliquez sur Monitoring > Logging dans l'arborescence
du menu :

Pour accder aux logs des vnements des endpoints des Services, cliquez sur le Dashboard ESB Locator
Endpoints :

100 Guide de prise en main de Talend ESB


Accder aux vnements dans les Dashboards ESB

Pour accder aux logs des vnements de l'activit des Services, cliquez sur le Dashboard ESB SAM :

Pour plus d'informations sur les Dashboards ESB, consultez Accder aux logs des vnements ESB dans Talend
Administration Center.

Guide de prise en main de Talend ESB 101


Dsinstaller les Features de la dmo

4.1.8. Dsinstaller les Features de la dmo


Pour nettoyer chaque conteneur de Talend Runtime pour d'ventuelles excutions ultrieures d'exemples, toutes
les Features des exemples d'utilisation du Locator doivent tre dsinstalles.

1. Dans le conteneur par dfaut, saisissez les commandes suivantes dans la console :
features:uninstall tesb-rac-services-sl-sam

features:uninstall tesb-rac-common-sl-sam

features:uninstall tesb-rac-app-sl-sam

2. Dans le conteneur de remplacement, saisissez les commandes suivantes dans la console :


features:uninstall tesb-rac-services-sl-sam

features:uninstall tesb-rac-common-sl-sam

3. Saisissez features:list | grep tesb-rac pour vous assurer que toutes les Features ont t correctement
dsinstalles.

Toutes les Features montres ici doivent avoir un statut uninstalled.

4.2. Dmo Rent-a-Car utilisant Security Token


Service pour fournir une authentification WS-
Security base SAML
Cette section dcrit la construction et l'excution de la dmo Rent-a-Car avec le module Security Token Service,
afin de fournir une authentification SAML base sur la scurit WS-Security.

Pour activer la scurit WS-security pour la dmo Rent-a-Car, le serveur de Security Token Service doit avoir
t install et dploy.

Pour suivre la dmo, vous devez :

1. Si ncessaire, crez un conteneur de remplacement comme dcrit dans Crer un conteneur de remplacement
pour les dmos.

2. Si ncessaire, configurez les paramtres de log afin d'craser la configuration par dfaut, comme dcrit dans
Configurer l'enregistrement des logs.

3. Dmarrez le conteneur principal (et le conteneur de remplacement, si ncessaire) avec les Services
d'Infrastructures - consultez Dmarrer Talend Runtime.

4. Construisez la dmo - consultez Construire la dmo avec la scurit active.

4.2.1. Configurer l'enregistrement des logs


La fonctionnalit STS est active dans la dmo standard Rent-a-Car dans <TalendRuntimePath>/examples/
talend/tesb/rent-a-car/.

Pour l'exemple Security Token Service de Rent-a-Car, le log automatique est activ par dfaut dans les fichiers
de configuration du client et du service.

102 Guide de prise en main de Talend ESB


Construire la dmo avec la scurit active

Pour dsactiver le log automatique dans l'exemple, supprimez le nud XML des fichiers beans.xml des services
et clients de l'exemple Security Token Service Rent-a-car :
<cxf:bus>
<cxf:features>
<cxf:logging />
</cxf:features>
</cxf:bus>

Les messages de log des clients et de Security Token Service sont stocks dans le conteneur de remplacement :

./alternate-container/log/tesb.log

Les messages de log des services sont stocks dans le mme rpertoire dans le conteneur principal.

4.2.2. Construire la dmo avec la scurit active


Pour construire la dmo, utilisez Maven avec le profil Security Token Service.

1. Pour vous assurer que le service Security Token Service est dmarr, dmarrez le conteneur de Talend
Runtime par dfaut, si vous l'avez arrt et excutez la commande dans la console :
list

Les bundles suivants s'affichent dans la liste : Apache CXF STS Core et Talend :: ESB :: STS ::
CONFIG, pour activer la fonctionnalit STS.

Si vous n'avez pas encore dmarr le service Security Token Service, excutez-le via la commande
tesb:start-all, ou, si vous souhaitez installer uniquement la Feature Security Token Service sans les
autres modules (Security Token Service, Service Locator), excutez la commande tesb:start-sts.

2. Les utilisateurs des produits Enterprise et Platform doivent s'assurer que leur systme de gestion de la scurit
est pass de TIDM JAAS (tesb:switch-sts-jaas). Pour plus d'informations, consultez Dmarrer Talend
Runtime.

3. Construisez les exemples de la dmo, partir de la console de l'invite de commande. Excutez la commande
suivante depuis le rpertoire <TalendRuntimePath>/examples/talend/tesb/rent-a-car/ :
mvn install -Psts

4. Installez les exemples eux-mmes. Pour ajouter l'URL de la Feature Rent-a-Car dans la console du conteneur
par dfaut, saisissez :
features:addurl mvn:org.talend.esb.examples.rent-a-car/features-sts/5.6.2/xml

5. Lorsque l'installation de l'exemple STS est termine et que le curseur est nouveau disponible, saisissez :
features:refreshurl

features:install tesb-rac-services-sts

Attendez nouveau que le curseur soit disponible.

6. Dmarrez le conteneur de remplacement et, dans sa console, saisissez :


features:addurl mvn:org.talend.esb.examples.rent-a-car/features-sts/5.6.2/xml

7. Lorsque les exemples ont t installs et que le curseur est nouveau disponible, saisissez :
features:refreshurl

features:install tesb-rac-app-sts

Guide de prise en main de Talend ESB 103


Dsinstaller les Features de la dmo

Attendez nouveau que le curseur soit disponible.

L'exemple STS est install et prt tre excut.

8. Excutez l'application de location, par exemple en excutant car:gui dans le conteneur de remplacement.
Pour plus d'informations, consultez Construction et dploiement de Services de donnes et Routes l'aide
de Java.

4.2.3. Dsinstaller les Features de la dmo


1. Lorsque vous avez termin l'excution de la dmo, vous pouvez dsinstaller les Features de Security Token
Service.

Dans le conteneur de remplacement, saisissez :

features:uninstall tesb-rac-app-sts

features:uninstall tesb-rac-common-sts

2. Dans le conteneur principal, saisissez :

features:uninstall tesb-rac-services-sts

features:uninstall tesb-rac-common-sts

4.3. Dmo Rent-a-Car utilisant Artifact


Repository
Cette section dcrit comment utiliser Artifact Repository pour dployer la dmo dans Talend Runtime. Consultez
Figure 1.6, Principes de fonctionnement de Talend Enterprise ESB pour une vue d'ensemble des interactions
entre Artifact Repository et les autres composants.

Dans les produits relatifs l'ESB de Talend, Nexus Artifact Repository est utilis pour grer les rfrentiels
Provisioning. Provisioning est utilis comme un catalogue dans lequel sont stocks les artefacts ESB (les Jobs,
les Routes, les Services et les Features OSGi gnriques) qui sont dploys et excuts. Ces artefacts ESB sont
conus par les dveloppeurs dans le Studio ou tout autre environnement de dveloppement Java. Par dfaut, deux
rfrentiels sont embarqus dans ce rfrentiel : un pour le dveloppement (Snapshots) et un pour la production
(Releases). Ces rfrentiels rendent les artefacts disponibles pour un dploiement dans Talend Runtime.

104 Guide de prise en main de Talend ESB


Tlcharger et installer Nexus Artifact Repository

Dans cette section, vous allez apprendre publier manuellement la dmo Rent-a-Car dans Artifact Repository
ainsi qu' dployer ses services du rfrentiel Artifact Repository au conteneur de Talend Runtime. Les tapes les
plus importantes sont les suivantes :

Tlchargement et installation d'Artifact Repository - consultez Tlcharger et installer Nexus Artifact


Repository).

Publication des Features de la dmo Rent-a-Car dans Artifact Repository - consultez Publier la dmo dans
Artifact Repository).

Dploiement des Features de la dmo Rent-a-Car depuis Artifact Repository dans Talend Runtime,
manuellement pour les produits communautaires comme Talend ESB Standard Edition ou Talend Open Studio
for ESB (consultez Dployer la dmo dans Talend ESB Standard Edition avec Nexus Artifact Repository) ou via
Talend Administration Center pour les produits Talend Enterprise ou Platform (consultez Dployer la dmo
dans Talend Runtime partir de Talend Administration Center).

Dploiement des Features de la dmo Rent-a-car depuis Artifact Repository dans Talend Runtime via Talend
Administration Center pour les produits Talend Enterprise ou Platform. Consultez Dployer la dmo dans
Talend Runtime partir de Talend Administration Center.

4.3.1. Tlcharger et installer Nexus Artifact


Repository
Dans ce scnario, vous allez utiliser Sonatype Nexus, le rfrentiel Artifact Repository recommand par Talend.
Nexus joue le rle d'un serveur partag de rfrentiels d'artefacts Maven.

Si vous utilisez Talend ESB Standard Edition ou Talend Open Studio for ESB, tlchargez les distributions Nexus
Open Source ou Nexus Pro disponibles sur le site Web de Nexus : http://www.sonatype.org/nexus (en anglais) et
suivez les instructions d'installation du site Web.

Si vous utilisez les produits Talend Enterprise ou Platform, Talend Artifact Repository (bas sur Nexus) : Artifact-
Repository-Nexus-VA.B.C.D.E.zip est fourni avec Talend Administration Center ou bien avec Talend Installer.

Pour l'installer, dzippez simplement le package.

Pour le dmarrer, parcourez son rpertoire et excutez :

./bin/nexus console (sous Linux)

.\bin\nexus.bat console (sous Windows)

Nexus est en cours d'excution l'adresse http://localhost:8081/nexus/index.html. Les informations de


connexion sont les suivantes : identifiant, admin et mot de passe, admin123, par dfaut.

4.3.2. Publier la dmo dans Artifact Repository


La procdure suivante peut tre excute dans les produits Talend ESB Standard Edition et Talend Open Studio
for ESB ou depuis les produits Talend Enterprise ou Platform. Elle explique comment publier la dmo dans
Nexus Artifact Repository avec les fichiers des projets Maven fournis avec Talend Runtime, pour la dployer
ultrieurement dans le conteneur de Talend Runtime.

1. Assurez-vous que Sonatype Nexus ou Talend Nexus Artifact Repository (pour les utilisateurs des produits
Enterprise ou Platform) est install et en cours d'excution - comme dcrit dans Tlcharger et installer Nexus
Artifact Repository.

Guide de prise en main de Talend ESB 105


Publier la dmo dans Artifact Repository

Si vous avez install via Talend Installer (pour les produits Enterprise ou Platform), vous pouvez voir le
Service Talend Artifact dans votre environnement.

2. Ajoutez la section suivante dans le fichier de configuration de Maven <TalendRuntimePath>/examples/


talend/tesb/rent-a-car/settings.xml et dans votre fichier $user.dir/.m2/settings.xml :

<server>
<id>nexus</id>
<username>admin</username>
<password>admin123</password>
</server>

3. Dans le fichier du projet Maven <TalendRuntimePath>/examples/talend/tesb/rent-a-car/pom.xml,


modifiez la section <distributionManagement> comme suit :

<distributionManagement>

<!-- use the following if you're not using a snapshot version. -->
<repository>
<id>nexus</id>
<name>RepositoryProxy</name>
<url>http://localhost:8081/nexus/content/repositories/releases</url>
</repository>

<!-- use the following if you ARE using a snapshot version. -->
<snapshotRepository>
<id>nexus</id>
<name>RepositoryProxy</name>
<url>http://localhost:8081/nexus/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>

http://localhost:8081/nexus/content/repositories/releases est l'URL correcte utiliser lorsque


Nexus est install en standalone ou lorsque vous utilisez Talend Nexus Artifact Repository. Cependant, si
Nexus a t install comme Application Web dans Tomcat (dploiement de fichier WAR), l'URL est http://
localhost:8080/nexus-webapp/content/repositories/releases.

4. Dans le fichier <TalendRuntimePath>/container/etc/org.ops4j.pax.url.mvn, vrifiez l'URL du


rfrentiel Nexus dans le paramtre org.ops4j.pax.url.mvn.repositories et modifiez-la si ncessaire.

org.ops4j.pax.url.mvn.repositories= \
.....
http://localhost:8080/nexus-webapp/content/repositories/releases@id=tesb.release, \
http://localhost:8080/nexus-webapp/content/repositories/
snapshots@snapshots@id=tesb.snapshot, \

http://localhost:8081/nexus/content/repositories/releases@id=tesb.release est l'URL


correcte utiliser lorsque Nexus est install en standalone ou lorsque vous utilisez Talend
Nexus Artifact Repository. Cependant, si Nexus a t install comme Application Web dans
Tomcat (dploiement de fichier WAR), l'URL est http://localhost:8080/nexus-webapp/content/
repositories/releases@id=tesb.release.

5. Dans la console d'une invite de commande, modifiez le rpertoire en <TalendRuntimePath>/examples/


talend/tesb/rent-a-car/ et excutez la commande suivante afin de dployer les Features d'exemple de
la dmo Rent-a-Car dans Artifact Repository :

mvn deploy

6. Allez dans le rpertoire http://localhost:8081/nexus/content/repositories/releases. L'exemple


de Rent-a-Car : org.talend.esb.examples.rent-a-car est correctement dploy.

Une fois les Features de la dmo Rent-a-Car publies dans Artifact Repository, vous pouvez les dployer dans
votre conteneur de Talend Runtime. Pour plus d'informations :

106 Guide de prise en main de Talend ESB


Dployer la dmo dans Talend ESB Standard Edition avec Nexus Artifact Repository

Pour les utilisateurs des produits Talend ESB Standard Edition et Talend Open Studio for ESB, consultez
Dployer la dmo dans Talend ESB Standard Edition avec Nexus Artifact Repository.

Pour les utilisateurs de Talend Enterprise ou Platform, consultez Dployer la dmo dans Talend Runtime
partir de Talend Administration Center.

4.3.3. Dployer la dmo dans Talend ESB Standard


Edition avec Nexus Artifact Repository
Cette section s'adresse aux utilisateurs de Talend ESB Standard Edition et Talend Open Studio for ESB. Si vous
tes un utilisateur d'un produit Enterprise ou Platform, consultez Dployer la dmo dans Talend Runtime partir
de Talend Administration Center. Cette section dcrit comment publier les Features de la dmo Rent-a-Car de
Artifact Repository dans votre conteneur de Talend Runtime.

1. Assurez-vous que les Features de la dmo Rent-a-Car ont bien t publies dans Artifact Repository - comme
dcrit dans Publier la dmo dans Artifact Repository.

Pour vrifier qu'elles ont bien t publies, allez l'adresse http://localhost:8081/nexus/content/


repositories/release, o l'exemple Rent-a-Car org.talend.esb.examples.rent-a-car a correctement t
dploy.

2. Dmarrez le conteneur - consultez Dmarrer Talend Runtime.

3. Installez les Features Rent-a-Car dans le conteneur de Talend Runtime l'aide de ces commandes :

features:addurl mvn:org.talend.esb.examples.rent-a-car/features/5.6.2/xml

features:refreshurl

features:install tesb-rac-services

features:install tesb-rac-app

4. Excutez la dmo avec cette commande :

car:gui

4.3.4. Dployer la dmo dans Talend Runtime partir


de Talend Administration Center
Cette section s'adresse aux utilisateurs des produits Enterprise ou Platform. Si vous utilisez Talend ESB Standard
Edition ou Talend Open Studio for ESB, consultez Dployer la dmo dans Talend ESB Standard Edition avec
Nexus Artifact Repository. Elle dcrit comment publier les Features de la dmo Rent-a-Car depuis Artifact
Repository dans votre conteneur de Talend Runtime via l'application Web Talend Administration Center.

1. Les applications Talend Runtime, Talend Administration Center et Nexus Artifact Repository doivent tre
en cours d'excution - comme dcrit dans Dmarrer le logiciel.

2. Assurez-vous que les Features de la dmo Rent-a-Car ont t publies dans Artifact Repository - comme
dcrit dans Publier la dmo dans Artifact Repository.

Pour vrifier leur publication, allez l'adresse http://localhost:8081/nexus/content/repositories/


release, o l'exemple Rent-a-Car org.talend.esb.examples.rent-a-car a correctement t dploy.

Guide de prise en main de Talend ESB 107


Dployer la dmo dans Talend Runtime partir de Talend Administration Center

3. Dans Talend Administration Center, cliquez sur Conductor > ESB Conductor pour crer une nouvelle tche
de dploiement.

4. Cliquez sur le bouton Add et renseignez les champs dans le panneau Edition de droite.

5. Dans le champ Label de la zone Metadata, saisissez rent-a-car et, dans le champ Description, saisissez
demo, par exemple.

6. Dans la zone Feature, cliquez sur Select Feature pour ouvrir l'assistant [Select Feature from Nexus
repository] vous permettant de renseigner les champs de cette zone :

108 Guide de prise en main de Talend ESB


Dployer la dmo dans Talend Runtime partir de Talend Administration Center

7. Dans la liste Repository, slectionnez releases et ouvrez les dossiers org > talend > esb > examples > rent-
a-car > features > 5.6.2, slectionnez la Feature features-5.6.2.xml puis cliquez sur OK. Les champs de
la zone Features sont automatiquement renseigns.

Dans la liste Name, slectionnez tesb-rac-services et dans la liste Type, slectionnez Service.

8. Dans la liste Server de la zone Runtime Config, slectionnez Talend Runtime Container.

Cliquez sur Save pour crer une tche de dploiement.

9. La tche de dploiement rent-a-car apparat dans la liste :

Guide de prise en main de Talend ESB 109


Utilisation de XKMS avec la dmo Rent-a-Car

Cliquez sur Deploy. La Feature tesb-rac-services est dploye sur le serveur slectionn (Talend Runtime
Container) et dmarre automatiquement.

La valeur de la colonne Last Action passe de CREATED DEPLOYED.

Les Services Rent-a-Car sont dploys et automatiquement dmarrs dans le conteneur de Talend Runtime. Ils
peuvent tre utiliss. Si vous saisissez list dans la console du conteneur, vous pouvez voir les services actifs :

[ 349] [Active ] [ ] [ ] [ 80] CRMService Common (5.6.2)


[ 350] [Active ] [ ] [ ] [ 80] ReservationService Common (5.6.2)
[ 351] [Active ] [ ] [ ] [ 80] CRMService Service (5.6.2)
[ 352] [Active ] [ ] [Started] [ 80] CRMService Service Endpoint JMX
(5.6.2)
[ 353] [Active ] [ ] [ ] [ 80] ReservationService Service (5.6.2)
[ 354] [Active ] [ ] [Started] [ 80] ReservationService Service
Endpoint JMX (5.6.2)

Pour utiliser ces services via l'application cliente de location Rent-a-Car, dployez le service correspondant dans
le conteneur de Talend Runtime. Pour ce faire, suivez la procdure dcrite ci-dessus, mais slectionnez la Feature
tesb-rac-app dans la liste Name de la zone Features.

Une fois le service de l'application cliente de location dploy dans le conteneur de Talend Runtime, excutez son
interface l'aide de la commande car:gui et utilisez conjointement les services Rent-a-Car.

Pour d'autres exemples de dploiement via Talend Administration Center, consultez Publier et dployer partir
de Talend Administration Center. Dans ce scnario, la publication dans Artifact Repository et le dploiement dans
le conteneur de Talend Runtime sont grs par Talend Administration Center, puisque le dveloppement du service
s'est fait dans le Studio Talend.

Pour plus d'informations concernant l'ESB Conductor, consultez le Guide utilisateur de Talend Administration
Center.

4.4. Utilisation de XKMS avec la dmo Rent-a-


Car
Cette section dcrit comment configurer l'exemple Rent-a-Car obtenant des certificats publics du service XKMS
pour crypter/signer des messages.

La fonctionnalit XKMS est disponible uniquement dans les produits Enterprise et Platform de Talend. Si vous
utilisez Talend ESB Standard Edition ou Talend Open Studio for ESB, vous ne pouvez pas excuter cette dmo.

Pour suivre cette dmo, vous devez :

1. Dmarrer le conteneur avec les Services d'Infrastructure - consultez Dmarrer Talend Runtime.

2. Configurez le service XKMS - consultez Configurer le service XKMS pour la dmo.

3. Construisez et excutez la dmo - consultez Construire l'exemple de la dmo Rent-a-Car.

4.4.1. Configurer le service XKMS pour la dmo


Une fois le conteneur de Talend Runtime et le service XKMS dmarrs, vous devez adapter la configuration par
dfaut la dmo :

110 Guide de prise en main de Talend ESB


Construire l'exemple de la dmo Rent-a-Car

1. Pour vous assurer que le service XKMS est dmarr, dmarrez le conteneur de Talend Runtime par dfaut,
si vous l'avez arrt, puis excutez la commande suivante dans la console :
list

Les bundles suivants activant la fonctionnalit XKMS s'affichent dans la liste :


[ 233] [Active ] [ ] [ ] [ 80] Apache CXF XKMS Common
(2.7.11)
[ 234] [Active ] [Created ] [ ] [ 80] Apache CXF XKMS Client
(2.7.11)
[ 343] [Active ] [ ] [ ] [ 80] Apache CXF XKMS Service
(2.7.11)
[ 344] [Active ] [ ] [ ] [ 80] Apache CXF XKMS X509 Handlers
(2.7.11)
[ 345] [Active ] [Created ] [ ] [ 80] Apache CXF XKMS OSGi
deployment (2.7.11)

Si vous n'avez pas encore dmarr le service XKMS, excutez-le via la commande tesb:start-all. Si
vous souhaitez uniquement installer la fonctionnalit XKMS sans installer les autres modules (Security Token
Service, Security Token Service, Service Locator), excutez la commande tesb:start-xkms.

2. Le service XKMS supporte la fois LDAP et les fichiers comme rfrentiels backend. Dans un environnement
de test ou de dmo, configurez le service XKMS pour utiliser un rfrentiel fichier (plus simple utiliser).

Modifiez le fichier de configuration container/etc/org.apache.cxf.xkms.cfg.

3. Assurez-vous que le paramtre Certificate repository est bien configur comme suit :
xkms.certificate.repo=file

4. Assurez-vous que le paramtre Filesystem backend est bien configur comme suit :
xkms.file.storageDir=${karaf.home}/esbrepo/xkms/certificates

Les certificats publics (*.cer) utiliss dans cet exemple ont t pr-installs dans le rfrentiel XKMS par
dfaut ${karaf.home}/esbrepo/xkms/certificates/trusted_cas du conteneur de Talend Runtime.

4.4.2. Construire l'exemple de la dmo Rent-a-Car


Pour construire cette dmo, vous devez construire la version XKMS de l'exemple Rent-a-Car, disponible dans un
dossier XKMS spcifique du conteneur de Talend Runtime.

1. Pour construire les exemples de la dmo, dans une invite de commande, modifiez le rpertoire en :
<TalendRuntimePath>/examples/talend/xkms/rent-a-car

Excutez la commande suivante :


mvn install

2. Installez les exemples. Dans la console du conteneur de Talend Runtime, excutez les commandes suivantes :
features:addurl mvn:org.talend.esb.ee.examples.rent-a-car/features/5.6.2/xml

features:install tesb-rac-services-xkms

features:install tesb-rac-app-xkms

3. Utilisez la commande list afin de vrifier que tout est correctement install :
[ 373] [Active ] [ ] [ ] [ 80] CRMService Common (5.6.2)

Guide de prise en main de Talend ESB 111


Accder aux logs des vnements ESB dans Talend Administration Center

[ 374] [Active ] [ ] [ ] [ 80] ReservationService Common


(5.6.2)
[ 375] [Active ] [ ] [ ] [ 80] CRMService Service (5.6.2)
[ 376] [Active ] [ ] [Started] [ 80] CRMService Service Endpoint
XKMS (5.6.2)
[ 377] [Active ] [ ] [ ] [ 80] ReservationService Service
(5.6.2)
[ 378] [Active ] [ ] [Started] [ 80] ReservationService Service
Endpoint XKMS (5.6.2)
[ 379] [Active ] [ ] [Started] [ 80] CRMService Client XKMS (5.6.2)
[ 380] [Active ] [ ] [Started] [ 80] ReservationService Client XKMS
(5.6.2)
[ 381] [Active ] [Created ] [ ] [ 80] App Reservation (5.6.2)

4. Pour utiliser la dmo, vous pouvez utiliser l'interface de l'application de location. Pour l'ouvrir, excutez la
commande suivante dans l'invite de commande du conteneur de Talend Runtime :
car:gui

4.5. Accder aux logs des vnements ESB


dans Talend Administration Center
Si vous tes un utilisateur d'une version Enterprise ou Platform, vous pouvez accder aux Dashboards ESB dans
Talend Administration Center. Ces Dashboards contiennent les logs relatifs aux vnements ESB, aux endpoints
du Locator et la disponibilit des Services, ainsi qu' Service Activity Monitoring. Cette fonctionnalit n'est pas
disponible dans Talend ESB Standard Edition et Talend Open Studio for ESB.

Cette section dcrit comment utiliser les Dashboards ESB de Talend Administration Center.

Dans l'application Web Talend Administration Center, cliquez sur Monitoring > Logging dans l'arborescence
du menu :

Le Dashboard ci-dessus est le Dashboard par dfaut. Il affiche les vnements de manire graphique et les classe
selon le seuil de log dfini dans la page Configuration de Talend Administration Center. Pour plus d'informations,
consultez le Guide utilisateur de Talend Administration Center.

112 Guide de prise en main de Talend ESB


Accder aux logs des vnements ESB dans Talend Administration Center

Pour accder aux logs des vnements des endpoints des Services, cliquez sur le Dashboard ESB Locator
Endpoints :

Le Dashboard ci-dessus affiche tous les endpoints des Services dploys dans le Runtime ainsi que leur
disponibilit. Par exemple, dans la capture d'cran ci-dessus, quatre endpoints sont lists : un pour le
cas d'usage du Service REST Employee ({http://www.talend.org/rest/}EmployeeService), un pour le
case d'usage du Service SayHello ({http://www.talend.org/service/}SayHelloService) et deux pour le
cas d'usage Rent-a-Car ({http://services.talend.org/CRMService}CRMServiceProvider et {http://
services.talend.org/ReservationService}ReservationServiceProvider). Ces quatre services sont
disponibles et actifs.

Pour accder aux logs des vnements de l'activit des Services, cliquez sur le Dashboard ESB SAM :

Guide de prise en main de Talend ESB 113


Accder aux logs des vnements ESB dans Talend Administration Center

Le Dashboard ci-dessus affiche toutes les activits des Services. Vous pouvez voir les quatre Services utiliss
dans les exemples. Comme vous pouvez le constater, les Services crs dans les cas d'usage de ce guide ont t
interrogs et une rponse correspond la plupart de ces requtes. De plus, les Services les plus interrogs sont
lists. Ici, les deux Services Rent-a-Car ({http://services.talend.org/CRMService}CRMServiceProvider
et {http://services.talend.org/ReservationService}ReservationServiceProvider) sont les Services
les plus interrogs.

114 Guide de prise en main de Talend ESB

You might also like