TP2- DEVELOPPEMENT D UNE APPLICATION SOA

Documents pareils
Configuration Interface for MEssage ROuting

FOSS Enterprise Integration Plattaform

PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES

Exécution de processus

Exécution de processus

Architecture SOA Un Système d'information agile au service des entreprises et administrations

Mineure Architectures Orientées Services SOA Exécution de processus. Mineure SOA. Exécution de processus

4. SERVICES WEB REST 46

Urbanisme du Système d Information et EAI

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL

Hébergement de sites Web

Programmation Web Avancée Introduction aux services Web

La démarche SOA et l interopérabilité applicative

Mineure Architectures Orientées Services SOA Business Process Modeling (BPM) Mineure SOA. Business Process Modeling (BPM)

Business Process Modeling (BPM)

WEBSERVICES. Michael Fortier. Master Informatique 2ème année. A308, Université de Paris 13

BPEL Orchestration de Web Services

SIO Page 1 de 5. Applications Web dynamiques. Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault

Développer avec les technologies ESRI. ESRI Developer Network (EDN) Gaëtan LAVENU ESRI France Jérémie MAJEROWICZ ESRI France

Développement des Systèmes d Information

Nouvelles technologies pour l intégration : les ESB

La suite logicielle Lin ID. Paris Capitale du Libre 25 septembre 2008

Architecture Orientée Service, JSON et API REST

Introduction aux «Services Web»

Le cadre des Web Services Partie 1 : Introduction

GRIDKIT: Pluggable Overlay Networks for Grid Computing

SOA Open Source Intégration des services et business process dans une architecture SOA Open Source. Bruno Georges JBoss, a Division of Red Hat

Urbanisation des Systèmes d'information

L Orchestration de Services Web avec Orchestra. Goulven Le Jeune Orchestra Project Manager

Urbanisation des SI. Des composants technologiques disponibles. Urbanisation des Systèmes d'information Henry Boccon Gibod 1

Apache Camel. Entreprise Integration Patterns. Raphaël Delaporte BreizhJUG

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web»

Les Architectures Orientées Services (SOA)

Petit Déjeuner Pépinière du Logiciel Libre. 25 juin 2008

Hébergement de site web Damien Nouvel

Jean-Philippe VIOLET Solutions Architect

LICENCE PROFESSIONNELLE

Web Application Models

Formation en Logiciels Libres. Fiche d inscription

Architectures Web Services RESTful

Comment booster vos applications SAP Hana avec SQLSCRIPT

Les nouvelles architectures des SI : Etat de l Art

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

21 mars Simulations et Méthodes de Monte Carlo. DADI Charles-Abner. Objectifs et intérêt de ce T.E.R. Générer l'aléatoire.

Bien architecturer une application REST

les techniques d'extraction, les formulaires et intégration dans un site WEB

Module BD et sites WEB

Architectures web/bases de données

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

Rapport de veille technologique

4D WebStar. WebStar, leader des serveurs internet sur Macintosh. Olivier Deschanels Simil Guetta Doug Finley. 4D WebStar. Histoire de WebStar

Business & High Technology

Exploitez la pleine puissance de l'architecture orientée services (SOA) en la combinant à la modélisation des processus d'affaires

Intégration d'applications à "gros grain" Unité d'intégration : le "service" (interface + contrat)

Business Process Execution Language

Synthèse des concepts

Projet ESB - Retour d expérience

Test de HSQLDB et Comparatif avec Sqlite

L art d ordonnancer. avec JobScheduler. François BAYART

Jahia. Guillaume Monnette École Ingénieurs 2000 Marne-La-Vallée IR3

Refonte front-office / back-office - Architecture & Conception -

LES ACCES ODBC AVEC LE SYSTEME SAS

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Intégration ESRI - SAP Geo-Enablement de l ERP SAP Exemple : GEO.e. Christophe Lapierre Enrique Yaptenco Professional Services - ESRI Suisse

Modèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM)

Service WEB, BDD MySQL, PHP et réplication Heartbeat. Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox

Business Process Management 2010 : La Solution IBM Maximiser l agilité de l entreprise UNE ETUDE DE JEMM RESEARCH

Système d échange inter-administration avec Petals ESB

Compte Rendu d intégration d application

Big Data. Cyril Amsellem Consultant avant-vente. 16 juin Talend

Notes de mise à jour. 4D v11 SQL Release 3 (11.3) Notes de mise à jour

Programmation Web. Introduction

Informatique & Systèmes de Communication. Stages de 12 à 16 semaines aux Etats-Unis

Oracle Fusion Middleware Concepts Guide 11g Release 1 (11.1.1) Figure 1-1 Architecture Middleware

Créer et animer une boutique en ligne avec Wordpress (environnement PC et MAC)

CESI Bases de données

Configuration Matérielle et Logicielle AGORA V2

Internet et Programmation!

WebSSO, synchronisation et contrôle des accès via LDAP

Vulgarisation Java EE Java EE, c est quoi?

Nouveautés ArcGIS 10.1 for Server

Introduction au développement SharePoint. Version 1.0

Introduction à Microsoft InfoPath 2010

Logiciel Enterprise Guide Version 1.3 Windows

Nouvelles opportunités pour les données fortement interconnectées : La base de graphe Neo4j

Développer une stratégie SIG Entreprise efficace avec ESRI et ArcGIS

Master CCI. Compétences Complémentaires en Informatique. Livret de l étudiant

Intégration du Web 2.0 dans les solutions IBM

! " # $ % & OPN Day Paris 14 mars 2006

Java et les bases de données

NOVA BPM. «Première solution BPM intégr. Pierre Vignéras Bull R&D

Introduction à la conception de systèmes d information

Annexe 5. Kaspersky Security For SharePoint Servers. Consulting Team

Mise en œuvre des serveurs d application

Transcription:

Université Constantine 2 Abdelhamid Mehri Faculté des Nouvelles Technologies de l Information et de la Communication Département Technologies des Logiciels et Systèmes d Information Formation Master 2 Systèmes d Information et Technologies Web Web Services 2016/2017 TP2- DEVELOPPEMENT D UNE APPLICATION SOA Dr. DJAMEL BENMERZOUG Objectifs du TP : Création d une application SOA Composite en utilisant BPEL et openesb 1

1. Introduction L'API Google Webs vous permet d'incorporer la fonction de recherche Web de Google dans les pages Web et applications que vous voulez développer, de sorte que vos utilisateurs peuvent rechercher tout ou partie du Web directement depuis l'application. L'API Google Webs est un service Web qui utilise les normes SOAP et WSDL. Vous pouvez utiliser l'api de Google pour développer des applications Web indépendamment de langage de programmation que vous préférez (Java, Perl, Ruby, ou C #, ). Les programmes que vous développez utilisent SOAP pour se connecter à distance aux services de l'api Google Webs, et ainsi retourner des résultats de recherche à partir de l'index de Google. 1.1 Types d'applications Google En utilisant l'api Google Webs, vous pouvez ajouter toutes sortes de fonctionnalités à vos applications. Vos programmes peuvent - émettre automatiquement des demandes de recherche à l'index Google, puis recevoir les résultats sous forme de données structurées dans le format que vous spécifiez. - accéder à des données historiques dans le cache de Google. - utiliser l'api Google Webs comme un correcteur orthographique. ( En résumé, tout ce que vous pouvez le faire à partir du site Web de Google est réalisable à partir de vos applications. Exemples de quelques services Google qu on peut l intégrer à nos applications : Market research : Un programme qui surveille régulièrement le Web pour afficher de nouvelles informations sur un sujet donné Data analysis : Un programme qui permet aux utilisateurs d'analyser en temps réel des informations récupéré à partir du Web, tels que : des actualités, des cotations boursières, etc. Trend analysis : Un programme qui récupère et analyse la quantité d'informations disponibles sur un sujet au fil du temps. Search interface : Un programme qui permet la recherche de renseignements des utilisateurs à l'aide d'une interface non-html. Spell checking : Un programme qui intègre la fonction de vérification d orthographe. 1.2 Utilisation de l'api Google Webs Pour développer avec l'api Google Webs, vous pouvez suivre les étapes suivantes : 1. Accédez à la page Web de Google API et télécharger le kit de développement. (Le kit de développement comprend toute la documentation et des exemples de code dont vous avez besoin pour commencer la programmation avec l'api Google Webs.) 2

2. Cliquez sur le lien pour créer un compte Google (ou inscrivez-vous à un compte existant) et de créer une clé de licence. 3. Développer vos programmes. Votre code doit inclure votre clé de licence avec chaque requête que vous soumettez au service de l'api Google Webs. Remarque : Le kit de développement de l API Google Webs comprend un fichier WSDL décrivant le service Google, une bibliothèque de client Java personnalisé, documentation sur la façon d'utiliser le service, et des exemples des messages SOAP. 2. Objectif de TP N 2 L objectif principal de ce TP est de développer une application SOA composite en utilisant l environnement openesb et le langage BPEL. L application que nous voulons développer permet d invoquer une fonctionnalité de Google (par exemple l API Google Custom Search). L application doit comporter au moins un service externe invoqué, puis stocker les informations de la demande ainsi que la réponse dans une base de données. Pour le développement de cette application, nous devons connaitre un certain nombre de concepts. - OpenESB OpenESB 1 est un Enterprise Service Bus (ESB) respectant la norme Java Business Integration (JBI), définie dans la spécification JSR 208. L environnement openesb permet l'intégration de plusieurs logiques métiers hétérogènes. Il dispose de deux types de composants: o engins d'exécution (service engine) qui permettent d'exécuter les différentes logiques métiers (BPEL, SQL, JEE, etc.) o composants de connexion (binding component) implémentant les différents standards de communication (FTP, HTTP, JDBC, etc.). - BPEL Le langage BPEL 2 permet de représenter les processus métiers, et de créer simplement des applications complexes faisant appel à plusieurs services web (voir chapitre 1 pour plus de détails). Les outils SOA de l environnement openesb fournissent un environnement graphique BPEL rendant ainsi la création de ces applications plus intuitive. 1 OpenESB : Open Enterprise Service Bus : http://www.open-esb.net 2 BPEL : Business Process Execution Language 3

Figure 1 : Exemple de processus BPEL avec les outils graphiques de OpenESB Pour comprendre les processus BPEL, il faut définir un ensemble de concepts: o Les services partenaires (Partner Services) : représentent tout service externe ou client qui interagit avec le processus BPEL. o Les activités : ce sont les tâches métier individuelles dans le processus, permettant de réaliser l objectif global de processus. o Les variables : Il existe plusieurs variables et messages qui circulent entre les activités du processus, et entre les activités et les partenaires. Dans la Figure 1, on retrouve une activité Assign, qui permet d affecter des éléments ou des valeurs à une nouvelle variable. Cela peut être réalisé par une simple opération de copie, ou par un traitement sur les entrées (concaténation, somme ). Cette affectation est représentée par un autre outil openesb : Le BPEL Mapper (voir la Figure 2) 4

Figure 2 : BPEL Mapper - JBI JBI 3 est une norme édictée dans la JSR208, basée sur une approche SOA. Il définit une architecture permettant la mise en place de solutions d intégration, basées sur l utilisation de composants qui communiquent via des messages. JBI définit une partie d un ESB: le conteneur de services, responsable de la vraie intégration. C est l endroit où des composants informatiques (comme des applications, protocoles, bases de données ou même fichiers de données) sont transformés en fournisseurs et/ou consommateurs de services. Il définit les services sous forme de fichiers WSDL. 3 JBI : Java Business Integration 5