Objectifs pédagogiques
- Appliquer une démarche SOA dans le cadre d'un système d'information
- Utiliser des techniques nécessaires sous-jacentes aux produits mis en oeuvre dans le cadre de l'implémentation SOA
- Mettre en place la norme JBI, le langage XML, WSDL et SOAP ainsi que le langage d'orchestration BPEL
- Distinguer des normes JEE telles que JAX-WS, JNDI, REST, JMS, JMX.
Modalités et moyens pédagogiques
Formation délivrée en présentiel ou distanciel* (e-learning, classe virtuelle, présentiel à distance).
Le formateur alterne entre méthode** démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).
Variables suivant les formations, les moyens pédagogiques mis en oeuvre sont :
- Ordinateurs Mac ou PC (sauf pour les cours de l'offre Management), connexion internet fibre, tableau blanc ou paperboard, vidéoprojecteur ou écran tactile interactif (pour le distanciel)
- Environnements de formation installés sur les postes de travail ou en ligne
- Supports de cours et exercices
En cas de formation intra sur site externe à M2i, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires (équipements informatique...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué.
* nous consulter pour la faisabilité en distanciel
** ratio variable selon le cours suivi
Niveau requis
Avoir une très bonne connaissance de JavaScript et de ses aspects avancés.
Testez vos connaissances
Afin de vous orienter vers la formation la plus adaptée à votre niveau, passez votre test de connaissances pour évaluer vos compétences actuelles.
Temps estimé : 4 minutes.
Passer le testPublic concerné
Développeurs ayant à réaliser des applications Web responsives.
Programme
La démarche SOA
- Périmètre d'une démarche SOA (Architecture Orientée Service) en entreprise
- Les acteurs concernés
- La démarche SOA dans le cadre de l'urbanisation du système d'information
- Une SOA par petites étapes
- Les limites des architectures synchrones
- La notion de service
- Granularité des services
- Des services CRUD aux services élaborés
- Le contrat de service
- Les limites des architectures synchrones
- La composition de services
- La démarche SOA dans l'esprit du Cloud
Les composants d'une architecture de type SOA
- Les quatre grands types d'architecture SOA
- Type 1 : SOA à base de services d'intégration graphique
- Type 2 : SOA à base de services de métier et de processus
- Type 3 : SOA à base de "mapping" de données
- Type 4 : SOA global et complet
- Rôle du serveur d'application dans une SOA
- Rôle des MOMs (Middlewares Orientés Message) dans une architecture SOA
- Rôle de l'ESB (Enterprise Service Bus) dans une architecture SOA
- Rôle des Services Web dans une architecture SOA
Les techniques utilisées dans une architecture SOA
- Représentation XML et JSON
- Approfondissement des schémas XSD
- Les espaces de nommage et les différents types
- Déclarations de données avec le XSD
- Quelle différence entre
- SOAP et REST
- XML et JSON
- Pourquoi l'un plutôt que l'autre ?
- Le WSDL (Web Service Description Langage)
- Son rôle
- Les liens avec le XSD
- Les WSDL abstraits et concrets
- Le WADL (Web Application Description Language), ou comment décrire des Web Service REST
- Rôle des messages SOAP
- Le routage des messages
- L'utilité des transformations XML dans une infrastructure de type SOA
- Possibilités
- Introduction aux concepts de base
- XSLT
- XPath
- Templates
- Le langage BPEL (Business Process Execution Language)
- Présentation du langage BPEL
- Orchestration de services avec le moteur BPEL
- Le "mapping" des données
- Utilisation de la transformation
- Les outils
JBI, standard SOA
- La spécification JBI (JSR 208)
- Le NMR (Normalized Message Router)
- Les liens entre JBI et WSDL
- Les messages JBI
- La notion de "binding components"
- Les traitements au sein de JBI avec les SE (Services Engines)
- Les SE dédiés BPEL, XSLT...
- Le packaging et le déploiement de composants JBI
Les principaux outils Open Source
- JBoss ESB
- Petals
- Mule
- Open ESB (focus sur ce produit)
- Les moteurs
- BPEL
- Apache ODE
- Open ESB
Les frameworks Web Services, tels que CXF ou Axis
Les MOMs de type JMS, tel qu'ActiveMQ
Les Services Web
- Définition d'un Web Service
- Différents types de Web Service
- Les représentations de données, JSON et XML
- Le produit soapUI
- Exemples d'implémentation d'un Web Service
L'architecture REST
- Histoire et présentation de REST
- Différences entre REST et RESTful
- Contraintes de REST
- Problèmes d'optimisation de REST
- Exploitation des verbes HTTP dans REST
- Mise en oeuvre de Web Services REST dans JEE
- Appel de Web Services REST depuis des clients JEE et Web
- Représentation des données et REST
- Protocole de représentation JSON
- Utilisation de REST dans une architecture SOA
La transformation de données
- L'utilité des transformations XML dans une infrastructure de type SOA
- Possibilités
- Présentation du langage XSLT
- Templates
- Verbes de gestion XSLT
- Exemple de transformation de données
- Exemple d'outils de transformation et de "mapping"
JMS et JNDI
- Positionnement d'un MOM JMS dans une SOA
- Introduction aux concepts JMS
- Types de destinations
- Formats de messages
- Envoi et réception...
- Lien entre un ESB et un Middleware JMS
- Présentation de JNDI
- Liens avec entre JMS et JNDI
Le routage intelligent de messages
- Principes du routage basé sur le contenu
- Exemple de routage dans OpenESB
- Exemple de routage dans Apache Camel
- L'intégration avec un ESB d'un appel à un Web Service et à des services extérieurs et internes (SE et BC)
L'orchestration des services
- Orchestration des services Web
- Langage BPEL
- Présentation du langage BPEL
- Conception d'une orchestration complète
- Test exécution et déploiement d'une orchestration BPEL
Présentation de JMX
- Présentation de la norme JMX
- Les outils d'administration JMX
- Création d'un composant JMX
- Administration de composants JMX
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités d’évaluation des acquis
- En cours de formation, par des études de cas ou des travaux pratiques
- Et, en fin de formation, par un questionnaire d'auto-évaluation