Réservez les formations disponibles partout en France !

location-dot
location-dot
location-dot
À partir de
location-dot
image OF
  1. SOA - Mise en oeuvre en Open Source

SOA - Mise en oeuvre en Open Source

Qualiopi
En centre
Non éligible CPF
Objectifs
Programme

A l'issue de cette formation, vous serez capable de :

  • 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.

Jour 1

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

Exemples de travaux pratiques (à titre indicatif)

  • A partir d'une problématique d'entreprise, identifier les services éligibles à exposer leur contrat dans une architecture de type SOA
  • Etudier pour chacun d'eux leur contrat de service

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 MOM (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

Exemples de travaux pratiques (à titre indicatif)

  • Sur la base d'un schéma cartographiant les applicatifs d'une entreprise et ses services, identifier les formes de SOA susceptibles d'être choisies pour améliorer la réutilisation des composants

Jour 2

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 Services 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

Exemples de travaux pratiques (à titre indicatif)

  • En utilisant les produits de la suite Altova XMLSpy et MapForce, comprendre les structures XML et JSON
  • Exploiter le WSDL et les schémas XSD afin d'accéder aux contrats de WebService
  • Comprendre la structure d'un fichier BPEL et l'exécuter au sein d'un moteur d'orchestration comme OpenESB

Jour 3

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

Exemples de travaux pratiques (à titre indicatif)

  • Installation de OpenESB
  • Configuration et déploiement d'un composant JBI au sein de OpenESB

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 MOM de type JMS, tel qu'ActiveMQ

Exemples de travaux pratiques (à titre indicatif)

  • Installation de Mule et de son outil de développement
  • Compréhension de son interface d'administration
  • Compréhension de ses nombreuses fonctionnalités
  • Comparaison avec OpenESB, déjà installé

Jour 4

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

Exemples de travaux pratiques (à titre indicatif)

  • Conception d'un Web Service SOAP
  • Récupération de son WSDL et installation de celui-ci dans OpenESB
  • Appel de ce Web Service depuis une orchestration simple OpenESB
  • Parallèlement, utilisation de SoapUI afin d'appeler le Web Service préalablement développé

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

Exemples de travaux pratiques (à titre indicatif)

  • Conception d'un serveur de service REST en Java
  • Appel de ce service REST depuis de multiples clients implémentés dans divers langages, et depuis SoapUI

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"

Exemples de travaux pratiques (à titre indicatif)

  • Ecriture de documents simples XSLT afin de transformer des données du format XML vers le même format, mais d'un vocabulaire à un autre
  • Utilisation de ce fichier de transformation pour utilisation par des produits de mapping comme MapForce

Jour 5

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 entre JMS et JNDI

Exemples de travaux pratiques (à titre indicatif)

  • A partir de plusieurs projets Java générant des données dans des Queue et Topic, récupération de ces données dans des projets Java les lisant
  • Utilisation de serveurs JMS comme JORAM

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

Exemples de travaux pratiques (à titre indicatif)

  • Approfondissement de la structure d'un fichier BPEL généré avec l'outil OpenESB
  • Mise au point et exécution d'une orchestration de plusieurs Web Services, certains Web Services fournissant des données alimentant d'autres Web Services

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

Exemples de travaux pratiques (à titre indicatif)

  • A partir de composants de type JavaBean écrits, ajout des interfaces permettant une administration via JMX
  • Administration de ces composants via Jconsole
Public visé

Développeurs ayant à réaliser des applications Web responsive.

Prérequis

Avoir une très bonne connaissance de JavaScript et de ses aspects avancés.

Autres formations disponibles :
Prochaines sessions disponibles :21 oct.22 oct.23 oct.24 oct.
En visio
Non éligible CPF
Prochaines sessions disponibles :29 oct.10 déc.11 mars17 juin
Qualiopi
En centre
Non éligible CPF
Prochaines sessions disponibles :03 nov.12 janv.04 mars03 juin
Qualiopi
En centre
Non éligible CPF
Prochaines sessions disponibles :04 nov.19 janv.09 mars22 juin
Qualiopi
En centre
Non éligible CPF
Prochaines sessions disponibles :05 nov.21 janv.27 mai16 sept.
Qualiopi
En centre
Non éligible CPF
logo ouformer
Réalisation :Definima
Utilisation des cookies

Nous utilisons des cookies pour vous fournir l'ensemble de nos services, notamment la recherche et les alertes. En acceptant, vous consentez à notre utilisation de ces cookies.

Tout refuser
Tout accepter