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

Dimension: px
Commencer à balayer dès la page:

Download "Apache Camel. Entreprise Integration Patterns. Raphaël Delaporte BreizhJUG 07.11.2011"

Transcription

1 Apache Camel & Entreprise Integration Patterns Raphaël Delaporte BreizhJUG

2 Speaker CTO Zenika Ouest Consultant et formateur Responsable comité technique Architecture d'entreprise Domaine ESB / BPEL / SOA / Messaging / WebServices Membre comité technique OASIS AMQP Spécifications Votes 2

3 Petite précision... Apache Camel Framework Java Implémentation des EIP A ne pas confondre avec CAML... # let rec couple l1 l2 = # let match rec (l1, couple l2) l1 with l2 = match ([],_)(l1, (_,[]) l2) with -> [] (a([],_) :: q, b (_,[]) :: p) -> (a, [] b) :: couple q p;; (a :: q, b :: p) -> (a, b) :: couple q p;; 3

4 Entreprise Integration Patterns Mêmes concepts que les design patterns en conception objet Solutions éprouvées à un problème commun EIP = patterns orientés intégration d'applications Routage de messages Transformation de messages Gestion des messages Type de endpoints / channels 4

5 Entreprise Integration Patterns 5

6 Apache Camel Puissant framework Java d'intégration Implémentation des EIP Routage et médiation Création de règles DSL (Domain Specific Language) Configuration XML 6

7 Apache Camel 10 bonnes raisons d'adopter un chameau Excellent framework d'intégration Open source et gratuit (Apache Software Foundation) Support de 50 EIP Support de plus de 80 types de Endpoint (connecteurs) Création de règles très intuitives Basé sur le framework Spring Léger et puissant Excellente documentation Cycle très court de release Support de 19 langages (pour expressions et prédicats) 7

8 The Spaghettis Incident? 8

9 Fonctionnement de Camel Camel permet de relier des endpoints via des routes Statiques Dynamiques Simples Complexes Camel permet de définir des endpoints Associés à des ressources Physiques ou logiques Les endpoints et les routes sont définis dans le CamelContext (moteur Camel) 9

10 Fonctionnement de Camel Exemple de route DSL from("direct:orig").to("direct:dest"); from("direct:orig").to("direct:dest"); Définition et création du endpoint «direct:orig» Permet de relier les endpoints logiques Camel «direct:orig» au endpoint «direct:dest» Représente une route à part entière 10

11 Fonctionnement de Camel Une route DSL plus complexe... from("activemq:orig") from("activemq:orig").multicast("http:d1","jms:d2").to("vm:d3").multicast("http:d1","jms:d2").to("direct:d2").to("vm:d3").loop(3).to("direct:d2").loadbalancer().loop(3).loadbalancer().roundrobin().to("bean:d1","irc:d2");.roundrobin().to("bean:d1","irc:d2"); 11

12 Fonctionnement de Camel Définir les routes en DSL Hériter de la classe org.apache.camel.builder.routebuilder Redéfinir la méthode abstraite configure() Un point d'entrée unique from() pour chaque route import org.apache.camel.builder.routebuilder; import org.apache.camel.builder.routebuilder; public class MaRoute extends RouteBuilder { public class MaRoute extends RouteBuilder void configure() throws Exception { public from("direct:origine") void configure() throws Exception {.to("direct:destination"); from("direct:origine") }.to("direct:destination"); } } } 12

13 Démo 13

14 Fonctionnement de Camel Création des routes L'appel de la méthode from() (qui doit être unique au sein d'une route) retourne un «processor type» Ce processor est l'action suivante qui doit être effectuée pour poursuivre l'exécution de la route Différents processors existent par défaut (to, filter, etc.) Il est possible de définir ses propres processors 14

15 Les composants de Camel Camel propose une offre extrêmement complète Plus d'une quarantaine de composants ActiveMQ, AMQP, Atom, CXF, CXFRS, File, Freemarker, FTP, Gmail, HDFS, HTTP, Imap, IRC, JBI, JDBC, JMS, LDAP, Mail, Nagios, Pop, Printer, RMI, Servlet, SFTP, SMTP, SNMP, SQL, TCP, UDP, XMPP, etc. La liste mise à jour régulièrement 15

16 Démo 16

17 Quelques endpoints... Endpoints de type ressource / protocole JMS File HTTP Endpoints logiques direct seda vm timer bean log 17

18 EIP Routage Simple 1 message à la fois stateless 1 message en sortie n messages en sortie 1 message 0 ou 1 message Parallèle Séquentiel Content based Router Message Filter Recipient List Splitter n messages à la fois statefull Moins de messages en sortie Aggregator Autant de message en sortie Resequencer Composé Parallèle Réparti les messages Composed Message Processor Diffuse les messages Scatter-Gather Prédéterminé, linéaire Routing Slip Séquentiel Possibilités infinies Process Manager 18

19 EIP Content Based Router Content Based Router Comment traiter une situation où l'implémentation d'une seule fonctionnalité est éparpillée sur plusieurs systèmes physiques? Routage basé sur le contenu Examine le contenu du message (headers ou body) Existence de champs Valeur de champs 19

20 Camel Content Based Router Content Based Router en Camel Permet de faire des choix basés sur des prédicats (conditions à satisfaire pour valider le test) choice().when(predicate).to(...).otherwise().to(...).end() choice().when(predicate).to(...).otherwise().to(...).end() Exemple from("seda:cbr") from("seda:cbr").choice().choice().when(header("ordertype").isequalto("gadget")).when(header("ordertype").isequalto("gadget")).to("seda:gadgetinventory").to("seda:gadgetinventory").when(header("ordertype").isequalto("widget")).when(header("ordertype").isequalto("widget")).to("seda:widgetinventory").to("seda:widgetinventory").otherwise().otherwise().to("seda:autre").end();.to("seda:autre").end(); 20

21 Camel Les prédicats Ensemble de conditions à évaluer Résultat binaire vrai ou faux (méthode matches) Très puissant pour créer les critères de routages Support de nombreux langages XPath, XQuery, Python, Groovy, etc. XPath import org.apache.camel.predicate; import import org.apache.camel.builder.xml.namespaces; org.apache.camel.predicate; import org.apache.camel.builder.xml.namespaces; Namespaces ns = new Namespaces("ns", "http://org.breizhjug"); Predicate Namespaces price ns = = new ns.xpath("/ns:order/ns:price/text()='10'"); Namespaces("ns", "http://org.breizhjug"); Predicate price = ns.xpath("/ns:order/ns:price/text()='10'"); 21

22 Camel Les prédicats La classe PredicateBuilder offre les fonctions élémentaires and, or, not, islessthan, isnull, regex, etc. Construction de prédicats import static org.apache.camel.builder.predicatebuilder.and; import import static static org.apache.camel.builder.xml.xpathbuilder.xpath; org.apache.camel.builder.predicatebuilder.and; import static org.apache.camel.builder.xml.xpathbuilder.xpath; Predicate price = xpath("/order/price/text()='10'"); Predicate Predicate ordertype price = xpath("/order/price/text()='10'"); = header("ordertype").isequalto("widget"); Predicate Predicate body ordertype = body().contains("camel"); = header("ordertype").isequalto("widget"); Predicate Predicate priceordertype body = body().contains("camel"); = and(price,ordertype); Predicate Predicate all priceordertype = and(body,priceordertype); = and(price,ordertype); Predicate all = and(body,priceordertype); 22

23 Démo 23

24 EIP Dynamic Router Dynamic Router Commenter éviter les dépendances du routeur sur toutes les destinations possibles, tout en maintenant son efficacité et sa maintenabilité? 24

25 Camel Dynamic Router Critères de routage calculés dynamiquement via une Expression (basé sur l'implémentation EIP Recipient List) recipientlist(expression) recipientlist(expression) public void configure() throws Exception { public from("seda:dynamicrouter") void configure() throws Exception { from("seda:dynamicrouter").recipientlist(new BeanExpression("dynamicRouter", "route")); }.recipientlist(new BeanExpression("dynamicRouter", "route")); } public String String orderid) { public return String "seda:out" + orderid; String orderid) { } return "seda:out" + orderid; } 25

26 EIP Possibilités infinies... Simple 1 message à la fois stateless 1 message en sortie n messages en sortie 1 message 0 ou 1 message Parallèle Séquentiel Content based Router Message Filter Recipient List Splitter n messages à la fois statefull Moins de messages en sortie Aggregator Autant de message en sortie Resequencer Composé Parallèle Réparti les messages Composed Message Processor Diffuse les messages Scatter-Gather Prédéterminé, linéaire Routing Slip Séquentiel Possibilités infinies Process Manager 26

27 Démo 27

28 EIP encore et encore... Régulateur de débit Temporisateur Répartiteur de charge Diffusion vers n récepteurs Répétition (throttler) (delayer) (loadbalancer) (multicast) (loop) 28

29 EIP et encore... Transactionnal client 29

30 Démo 30

31 Et Spring Integration dans tout ça? Spring Integration a une approche totalement différente Camel est route-oriented SI est composant-oriented (philosophie Spring) Syntaxe SI est 100% XML (pas de DSL) SI est plus fidèle aux définitions des EIP Message Channel Channel Adapter On retrouve les mêmes EIP de routage / transformation Aggregator, Splitter, Resequencer, Dynamic router 31

32 SI Concepts clés Type de Message channel Pollable channel Subscribable channel Intégration de beans Spring plus intuitive Gateway Service activator Notion native de Bridge Contrôleur de flux 32

33 Comparaison A fonctionnalités équivalentes SI est plus complexe à mettre en œuvre Moins intuitif Syntaxe XML obligatoire, plus verbeux Camel est plus plug'n'play 33

34 Démo 34

35 Questions? Merci! Et n'oubliez pas, nous vous attendons tous à la What's Next 2012 les 14 et 15 juin 35

Intégration avec Camel et ServiceMix

Intégration avec Camel et ServiceMix Charles Moulliard Architecte de Solutions Apache Committer Objectif «Faire découvrir les projets Apache orientés Intégration comme Camel ainsi que le conteneur ServiceMix et les architectures cibles» 3

Plus en détail

Spring : tendances, nouveautés et perspectives

Spring : tendances, nouveautés et perspectives Spring : tendances, nouveautés et perspectives Paris JUG 13/11/2012 Arnaud Cogoluègnes Speaker Arnaud Cogoluègnes Consultant chez Zenika Formateur certifié SpringSource Co-auteur Spring Batch in Action

Plus en détail

Enterprise Service Bus

Enterprise Service Bus Enterprise Service Bus Daniel Hagimont IRIT/ENSEEIHT 2 rue Charles Camichel - BP 7122 31071 TOULOUSE CEDEX 7 Daniel.Hagimont@enseeiht.fr http://hagimont.perso.enseeiht.fr 1 Intégration - besoins Briques

Plus en détail

Web services en Java (services Web) JMF (Tous droits réservés) 1

Web services en Java (services Web) JMF (Tous droits réservés) 1 Web services en Java (services Web) JMF (Tous droits réservés) 1 Web services (services web) : qu'est ce? Une architecture orientée objet et distribuée où les messages sont en syntaxe XML Ce n'est pas

Plus en détail

Configuration Interface for MEssage ROuting

Configuration Interface for MEssage ROuting Configuration Interface for MEssage ROuting Cahier des Charges Date : 05/04/07 Version : 1.1 Statut : diffusable Auteurs : BAGNARD Natacha FOROT Julien 1/16 Table des révisions Version Date Modifications

Plus en détail

La S O A O pen S ource avec. Démos / Outils PEtALS

La S O A O pen S ource avec. Démos / Outils PEtALS La S O A O pen S ource avec Démos / Outils PEtALS Sept. 2007 La route vers la SOA Un ESB (Enterprise Service Bus) basé sur les standards Java, JBI et Web Services est une bonne technologie pour instancier

Plus en détail

Composition de Services Web

Composition de Services Web Composition de Services Web Dr. Djamel Benmerzoug Email : djamel.benmerzoug@univ-constantine2.dz Maitre de Conférences A, Département TLSI Faculté des NTIC Université Constantine 2 Abdelhamid Mehri 127

Plus en détail

OpenESB Libre, standard, outillé, documenté et supporté

OpenESB Libre, standard, outillé, documenté et supporté OpenESB Libre, standard, outillé, documenté et supporté Alexis Moussine-Pouchkine Sun Microsystems, Inc. Constat Les projets d'intégration sont mono-éditeur Est-ce viable à long terme? Quel(s) Standard(s)

Plus en détail

BPEL Orchestration de Web Services

BPEL Orchestration de Web Services Orchestration de Web Services Grégory Le Bonniec gregory.lebonniec@zenika.com 26 novembre 2009 1 Zenika Conseil / Développement / Formation Localisation : Paris et Rennes Nos partenaires Mon expérience

Plus en détail

Créer une architecture distribuée.net

Créer une architecture distribuée.net Ingénieurs 2000 Exposé Système & Réseaux 2006/2007 Créer une architecture distribuée.net Concepts et exemples 1. Présentation du Framework.NET 2. Créer et utiliser des services Web 3. Comment créer des

Plus en détail

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

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web» Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web» Sana Sellami sana.sellami@lsis.org 2014-2015 Plan Partie 1: Introduction aux Services Web (SW) Partie 2: Vers une

Plus en détail

l'esb JBI au coeur de l'initiative SOA

l'esb JBI au coeur de l'initiative SOA l'esb JBI au coeur de l'initiative SOA Initiative SOA Gaël Blondelle CTO EBM WebSourcing Chairman Technology Council OW2 13 Juin 2007 Agenda Ptf de référence OW2 Initiative SOA PEtALS, l'esb d'ow2 2 Opportunité

Plus en détail

WEBSERVICES. Michael Fortier. Master Informatique 2ème année. fortier@lipn.univ-paris13.fr A308, Université de Paris 13

WEBSERVICES. Michael Fortier. Master Informatique 2ème année. fortier@lipn.univ-paris13.fr A308, Université de Paris 13 WEBSERVICES Michael Fortier Master Informatique 2ème année fortier@lipn.univ-paris13.fr A308, Université de Paris 13 https ://lipn.univ-paris13.fr/ fortier/enseignement/webservices/ Sommaire 1 Rappels

Plus en détail

Cours en ligne Développement Java pour le web

Cours en ligne Développement Java pour le web Cours en ligne Développement Java pour le web We TrainFrance info@wetrainfrance Programme général du cours Développement Java pour le web Module 1 - Programmation J2ee A) Bases de programmation Java Unité

Plus en détail

Technologies du Multimédia et du Web

Technologies du Multimédia et du Web 3 ème Année Licence appliquée Technologies du Multimédia et du Web MoezBEN HAJ HMIDA ISSAT Sousse 2009/2010 Plan Les systèmes e-services Évolution des architectures d applications Les architectures client/serveur

Plus en détail

LISE 3. Template pour les mails. Version 1.0 du 13/04/2010. Etat : Validé

LISE 3. Template pour les mails. Version 1.0 du 13/04/2010. Etat : Validé Template pour les mails Version 1.0 du 13/04/2010 Etat : Validé SUIVI DES MODIFICATIONS Version Rédaction Description Vérification Date 1.0 A. Lesuffleur création du document 13/04/10 Document validé dans

Plus en détail

Les Enterprise Service Bus. Amine Slimane

Les Enterprise Service Bus. Amine Slimane Les Enterprise Service Bus Amine Slimane 1 Plan de la présentation Principes de la SOA Principe d un ESB Fonctionnement interne d un ESB L intégration d un ESB au travers d un exemple concret Conclusion

Plus en détail

Introduction aux «Services Web»

Introduction aux «Services Web» Introduction aux «Services Web» Sana Sellami sana.sellami@univ-amu.fr 2014-2015 Modalité de contrôle de connaissances Note de contrôle de continu Note projet Evaluation du projet la semaine du 17 novembre

Plus en détail

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée

Plus en détail

GRAILS L'ARCHITECTURE GRAILS

GRAILS L'ARCHITECTURE GRAILS GRAILS L'ARCHITECTURE GRAILS Grails est un serveur d'application web basé sur le langage Groovy, et le framework Spring. Il est édité par la société : SpringSource. Une application Grails se décompose

Plus en détail

TP 6 : Java Server Pages et Tomcat.

TP 6 : Java Server Pages et Tomcat. TP 6 : Java Server Pages et Tomcat. Christophe Gravier, Frédérique Laforest, Julien Subercaze Télécom Saint-Étienne Université Jean Monnet {pnom.nom}@univ-st-etienne.fr FI2_INFO4 20122013 1 / 24 Plan Objectifs

Plus en détail

Auto-évaluation Aperçu de l architecture Java EE

Auto-évaluation Aperçu de l architecture Java EE Auto-évaluation Aperçu de l architecture Java EE Document: f1218test.fm 22/03/2012 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION APERÇU

Plus en détail

Applications orientées données (NSY135)

Applications orientées données (NSY135) Applications orientées données (NSY135) 2 Applications Web Dynamiques Auteurs: Raphaël Fournier-S niehotta et Philippe Rigaux (philippe.rigaux@cnam.fr,fournier@cnam.fr) Département d informatique Conservatoire

Plus en détail

Intégration de systèmes

Intégration de systèmes Intégration de systèmes Préparé par: Marc Barassi, Michel Fraser, Louis Martin, Martin Simoneau Collaboration spéciale: François Boucher et Richard Boutin 3/18/14 Intégration de systèmes «L ensemble des

Plus en détail

Chaker ALLAOUI chaker.allaoui@gmail.com WEBSERVICE API REST SYMFONY 2

Chaker ALLAOUI chaker.allaoui@gmail.com WEBSERVICE API REST SYMFONY 2 Chaker ALLAOUI chaker.allaoui@gmail.com WEBSERVICE API REST SYMFONY 2 TABLE DES MATIERES Contenu Présentation 1 Technologies 2 Installation des bundles 3 Configuration des bundles 4 Configuration de Symfony

Plus en détail

Apache Thrift, SOA légère. Retour d'expérience

Apache Thrift, SOA légère. Retour d'expérience Apache Thrift, SOA légère Retour d'expérience Qui sommes-nous? 2 Speaker : Horacio Gonzalez Spaniard lost in Brittany, Java developer, dreamer and all-around geek Architecte technique au Crédit Mutuel

Plus en détail

Web services en Java (services Web) Jean-marc Farinone

Web services en Java (services Web) Jean-marc Farinone Web services en Java (services Web) Jean-marc Farinone Web services (services web) : qu'est ce? Une architecture orientée objet et distribuée où les messages sont en syntaxe XML. Une définition : Les Services

Plus en détail

INTRODUCTION À JAVA EE. Cours Master 2 - Java EE

INTRODUCTION À JAVA EE. Cours Master 2 - Java EE INTRODUCTION À JAVA EE 1 LA NÉBULEUSE JAVA Java Micro Edition (JME) développement d applications embarquées Java Standard Edition (JSE) développement d applications classiques Java Enterprise Edition (JEE)

Plus en détail

M2 MIAGE EVRY RAPPORT DE PROJET TECHNOLOGIE SCA

M2 MIAGE EVRY RAPPORT DE PROJET TECHNOLOGIE SCA M2 MIAGE EVRY RAPPORT DE PROJET TECHNOLOGIE SCA Matière : Architecture orientée service Enseignants : Boccon-Gibod, Godefroy Étudiants : DIALLO Amadou Tidiane GOLAB Barbara 1 IDENTIFICATION DU PROJET Projet

Plus en détail

Spring par la pratique

Spring par la pratique Spring par la pratique 2 e édition Spring 2.5 et 3.0 Arnaud Cogoluègnes Thierry Templier Julien Dubois Jean-Philippe Retaillé avec la contribution de Séverine Templier Roblou et de Olivier Salvatori Groupe

Plus en détail

Programmation d applications distribuées

Programmation d applications distribuées Programmation d applications distribuées François Charoy Université Henri Poincaré 8 octobre 2007 Première partie I Développement d applications distribuées Objectifs du cours Comprendre ce qu est une

Plus en détail

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

La démarche SOA et l interopérabilité applicative La démarche SOA et l interopérabilité applicative Retour d'expérience des projets RITA / PRESTO de la Direction Générale de la Modernisation de l'état Abdelaziz Skalli Consultant Tél : +33.630.78.54.75

Plus en détail

Cocoon. Cocoon. http://cocoon.apache.org/ (alain.bouju@univ-lr.fr) (http://perso.univ-lr.fr/abouju)

Cocoon. Cocoon. http://cocoon.apache.org/ (alain.bouju@univ-lr.fr) (http://perso.univ-lr.fr/abouju) Cocoon Cocoon http://cocoon.apache.org/ (alain.bouju@univ-lr.fr) (http://perso.univ-lr.fr/abouju) 1 Cocoon Présentation Apache Cocoon est un système de développement web permettant une séparation des problèmes

Plus en détail

pac4j : la librairie de sécurité pour Java par Jérôme LELEU

pac4j : la librairie de sécurité pour Java par Jérôme LELEU pac4j : la librairie de sécurité pour Java par Jérôme LELEU www.parisjug.org Copyright @ 2014 ParisJug. Licence CC - Creatve Commons 2.0 France Paternité - Pas d'utlisaton Commerciale - Partage des Conditons

Plus en détail

Formation développement Java, Spring et Hibernate

Formation développement Java, Spring et Hibernate L institut de formation continue des professionnels du Web Formation développement Java, Spring et Hibernate Référence formation : Durée : Prix conseillé : DJSH 10 jours (70 heures) 4 500 HT (hors promotion

Plus en détail

CQP Développeur Nouvelles Technologies (DNT)

CQP Développeur Nouvelles Technologies (DNT) ORGANISME REFERENCE STAGE : 26572 20 rue de l Arcade 75 008 PARIS CONTACT Couverture géographique : M. Frédéric DIOLEZ Bordeaux, Rouen, Lyon, Toulouse, Marseille Tél. : 09 88 66 17 40 Nantes, Lille, Strasbourg,

Plus en détail

Catalogue des Formations. Gama Core

Catalogue des Formations. Gama Core Catalogue des Formations Gama Core Présentation Notre mission est de développer des solutions personnalisées en tirant parti de la puissance des technologies open source. Les Solutions Open Source sont

Plus en détail

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

Architecture SOA Un Système d'information agile au service des entreprises et administrations Architecture SOA Un Système d'information agile au service des entreprises et administrations www.objis.com Présentation Architecture SOA - JCertif 1 Qui sommes-nous? Spécialiste JAVA depuis 2005 (Lyon,

Plus en détail

Présentation générale des Web Services

Présentation générale des Web Services Présentation générale des Web Services Vue Globale Type d'architecture reposant sur les standards de l'internet Alternative aux architectures classiques : Client/serveur n/tiers Orientée services permettant

Plus en détail

Introduction aux. services web 2 / 2

Introduction aux. services web 2 / 2 Introduction aux services web 2 / 2 1 Calendrier 2 x CM A 107 mercredi 7 janvier 2015, 08 h 00 10 h 00 : introduction sur la théorie des services web mercredi 28 janvier 2015, 08 h 00 10 h 00 : introduction

Plus en détail

API04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture

API04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture API04 Contribution Apache Hadoop: Présentation et application dans le domaine des Data Warehouses Introduction Cette publication a pour but de présenter le framework Java libre Apache Hadoop, permettant

Plus en détail

FOSS Enterprise Integration Plattaform

FOSS Enterprise Integration Plattaform FOSS Enterprise Integration Plattaform 1 Modèle architectural Visual tools Human Activity Orchestr. Integration ESB Assembly 1 JBI BC e-form BPEL Server Assembly 2 SCA Assemly 3 Enterprise Monitor MetaDB

Plus en détail

Formation Réseaux : Notions de base

Formation Réseaux : Notions de base Formation x Formation Réseaux : Notions Jean-Philippe André (), p2009 3. Couche Septembre 2007 Que sont les x? Formation x Wikipedia.org : Un est un ensemble de nœuds (ou pôles) reliés entre eux par des

Plus en détail

18 Mars 2014 Les arrivées des lambdas, des méthodes par défaut, des interfaces fonctionnelles et de Stream vont modifier en

18 Mars 2014 Les arrivées des lambdas, des méthodes par défaut, des interfaces fonctionnelles et de Stream vont modifier en Java 8 Java 8 56 Nouvelles fonctionnalités 18 Mars 2014 Les arrivées des lambdas, des méthodes par défaut, des interfaces fonctionnelles et de Stream vont modifier en profondeur le langage et donc l'écosystème

Plus en détail

AOP Tools Comparison

AOP Tools Comparison Comparaison des outils de développement AOP en Java basée sur l'article de Mik Kersten. Fabrice Bodmer & Timothée Maret Université de Fribourg, Juin 2006 Plan 1. Introduction 2. Présentation des outils

Plus en détail

Les servlets Le langage Java Les Servlets XVII-1 JMF

Les servlets Le langage Java Les Servlets XVII-1 JMF Les Servlets XVII-1 servlet =? Une servlet est un programme (plug-in) à ajouter à un serveur (quel qu'il soit). Ce cours a trait à la programmation Java coté serveur (J2EE ) Pour l'instant les serveurs

Plus en détail

Hébergement de site web Damien Nouvel

Hébergement de site web Damien Nouvel Hébergement de site web Plan L'hébergeur Le serveur web Apache Sites dynamiques 2 / 27 Plan L'hébergeur Le serveur web Apache Sites dynamiques 3 / 27 L'hébergeur L'hébergeur sous-traite l'architecture

Plus en détail

Mettez les évolutions technologiques au service de vos objectifs métier

Mettez les évolutions technologiques au service de vos objectifs métier Mettez les évolutions technologiques au service de vos objectifs métier 2 OXIA a pour mission de concevoir et mettre en oeuvre les meilleures solutions technologiques visant à améliorer la productivité,

Plus en détail

Dossier de conception. Conception d un site E-learning

Dossier de conception. Conception d un site E-learning Conception d un site E-learning Encadré par : Mr. LACHGAR Mohamed Réalisé par : LECHQER Younesse ELEOUAD Abdelhadi SOMMAIRE I. PERIMETRE DU PROJET... 2 1.1. ENJEUX ET VISION DU PROJET... 3 1.2. ARCHITECTURE

Plus en détail

Sémantique formelle et synthèse de client pour services Web

Sémantique formelle et synthèse de client pour services Web Sémantique formelle et synthèse de client pour services Web Séminaire «Services Web» 24 Janvier 2006 sylvain.rampacek@univ-reims.fr CReSTIC LAMSADE Plan Introduction Services Web Description de la plate-forme

Plus en détail

ARCHITECTURE REST & WEB SERVICES. Exposé Informatique & Réseaux CHAMBON Florian 14 janvier 2014

ARCHITECTURE REST & WEB SERVICES. Exposé Informatique & Réseaux CHAMBON Florian 14 janvier 2014 ARCHITECTURE REST & WEB SERVICES Exposé Informatique & Réseaux CHAMBON Florian 14 janvier 2014 1 Introduction Présentation de Rest Serveur Java JAX-RS Démonstration 2 Introduction Présentation de Rest

Plus en détail

DotNet Remoting. Assia HACHICHI. dr.hachichi@gmail.com (basé sur un cours de Lionel Seinturier) Page 1

DotNet Remoting. Assia HACHICHI. dr.hachichi@gmail.com (basé sur un cours de Lionel Seinturier) Page 1 DotNet Remoting Assia HACHICHI dr.hachichi@gmail.com (basé sur un cours de Lionel Seinturier) Page 1 I Introduction 1. Introduction 2. Modèle de programmation 3. Caractéristiques techniques Invocation

Plus en détail

Programmation servlet

Programmation servlet Programmation servlet Olivier Aubert 1/23 Références http://developer.java.sun.com/developer/onlinetraining/servlets/fundamenta http://www.servlets.com http://java.sun.com/products/jsp/index.html http://www.servletcentral.com/

Plus en détail

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 9 NFP111 Systèmes et Applications Réparties Cours 6 - Remote Method Invocation (RMI)/Partie 2 Claude Duvallet Université du Havre UFR Sciences et Techniques

Plus en détail

Le réseau. Sommaire. Ce chapitre concerne les classes du package java.net qui permettent de travailler avec le réseau au niveau applicatif.

Le réseau. Sommaire. Ce chapitre concerne les classes du package java.net qui permettent de travailler avec le réseau au niveau applicatif. Le réseau Ce chapitre concerne les classes du package java.net qui permettent de travailler avec le réseau au niveau applicatif. Sommaire 1.LES URL... 2 1.1DÉFINITIONS...2 1.2LES CLASSES URL ET URLCONNECTION...

Plus en détail

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand Centrale Réseaux

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux Formation Webase 5 Ses secrets, de l architecture MVC à l application Web Adrien Grand Centrale Réseaux Sommaire 1 Obtenir des informations sur Webase 5 2 Composants de Webase 5 Un

Plus en détail

Programmation orientée objet appliquée avec le langage Java

Programmation orientée objet appliquée avec le langage Java Programmation orientée objet appliquée avec le langage Java IUT d'aix Marseille Réseaux et Télécommunications Novembre 2013 Ivan Madjarov Partie X Programmation objet avec Java Application et Applet Dessiner

Plus en détail

Groovy & Grails. Langage de script basé sur Java appliqué dans un environnement JEE

Groovy & Grails. Langage de script basé sur Java appliqué dans un environnement JEE Groovy & Grails Langage de script basé sur Java appliqué dans un environnement JEE Martin Le Bas 1 Xposé 2010 Plan Introduction Groovy Grails Conclusion Références Plan de la présentation Introduction

Plus en détail

Projet ESB - Retour d expérience

Projet ESB - Retour d expérience Projet ESB - Retour d expérience Projet de communication et d échange d informations entre SI 9 ème rencontre mondiale des logiciels libres - 02.07.2008 - ETNIC 1 Agenda Présentation 2. CFWB et ETNIC 4.

Plus en détail

Web Services. Introduction à l aide d un exemple. Urs Richle

Web Services. Introduction à l aide d un exemple. Urs Richle Web Services Introduction à l aide d un exemple Urs Richle 7/12/2005 Problématique Requête Windows Mac Linux HTML XHTM CSS XML SVG XTM... ASP PHP Java Applet JSP Servlet... IIS Apache Tomcat... Data Oracle

Plus en détail

IBM DB2 Content Manager

IBM DB2 Content Manager IBM DB2 Content Manager L Enterprise Content Management _ Solution de GED Présentation Groupe PIN, 28 juin 2005 Chawki TAWBI Chawki.Tawbi@fr.ibm.com IBM Software Information Management IBM CONTENT MANAGEMENT

Plus en détail

SEN TCP/UDP - page1 /5

SEN TCP/UDP - page1 /5 SEN TCP/UDP - page /5 TCP/UDP I) Rôles communs a) Segmentation Dans les communications réseaux, la taille des données peut aller jusqu'à plusieurs Giga Octet, il est impossible d envoyer des paquets IP

Plus en détail

Qu'est-ce qu'un Web Service?

Qu'est-ce qu'un Web Service? WEB SERVICES Qu'est-ce qu'un Web Service? Un Web Service est un composant implémenté dans n'importe quel langage, déployé sur n'importe quelle plate-forme et enveloppé dans une couche de standards dérivés

Plus en détail

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

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués Architecture JEE. Objectifs attendus Serveurs d applications JEE Systèmes distribués Architectures JEE Normes JEE couches logicielles, n-tiers framework JEE et design patterns 2007/02/28 Eric Hébert.eheb@yahoo.fr

Plus en détail

Plan. Environnement Client/Serveur. Cours 6 Rappels Java (suite) Appel de méthode à distance. Utilité. static

Plan. Environnement Client/Serveur. Cours 6 Rappels Java (suite) Appel de méthode à distance. Utilité. static Plan Environnement Client/Serveur Cours 6 Rappels Java (suite) Appel de méthode à distance kn@lri.fr http://www.lri.fr/~kn 1 Rappels sur les systèmes d'exploitations / Communication par mémoire partagée

Plus en détail

DataPower et WebSphere Service Registry and Repository (WSRR) Magali Boulet IT Specialist magali.boulet@fr.ibm.com

DataPower et WebSphere Service Registry and Repository (WSRR) Magali Boulet IT Specialist magali.boulet@fr.ibm.com DataPower et WebSphere Service Registry and Repository (WSRR) Magali Boulet IT Specialist magali.boulet@fr.ibm.com 1 Agenda Présentation DataPower Gouvernance : intégration DataPower et WSRR Abonnement

Plus en détail

Hassene BELGACEM. Expériences Professionnelles. JEE architect / Technical leader. Ingénieur Informatique. Cycle Préparatoire

Hassene BELGACEM. Expériences Professionnelles. JEE architect / Technical leader. Ingénieur Informatique. Cycle Préparatoire Objectifs Formations Expériences Professionnelles Hassene BELGACEM http://belgacem.hassene.netcv.com S intégrer dans une équipe de développement de haute compétence et participer activement dans la réalisation

Plus en détail

Profil des participants Le cours CCNA Exploration s adresse aux participants du programme Cisco

Profil des participants Le cours CCNA Exploration s adresse aux participants du programme Cisco Présentation et portée du cours : CNA Exploration v4.0 Networking Academy Profil des participants Le cours CCNA Exploration s adresse aux participants du programme Cisco diplômés en ingénierie, mathématiques

Plus en détail

Les activités de recherche sont associées à des voies technologiques et à des opportunités concrètes sur le court, moyen et long terme.

Les activités de recherche sont associées à des voies technologiques et à des opportunités concrètes sur le court, moyen et long terme. Mémoires 2010-2011 www.euranova.eu EURANOVA R&D Euranova est une société Belge constituée depuis le 1er Septembre 2008. Sa vision est simple : «Être un incubateur technologique focalisé sur l utilisation

Plus en détail

Chapitre 1 Comment se connecter à Internet... 13

Chapitre 1 Comment se connecter à Internet... 13 Chapitre 1 Comment se connecter à Internet... 13 1.1 Adresse IP permanente ou temporaire... 16 1.2 Débit d une connexion... 16 1.3 Utilisation occasionnelle (RTC, Numéris)... 20 RTC... 20 RNIS... 24 1.4

Plus en détail

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki Institut Supérieur de Gestion Cours pour 3 ème LFIG Java Enterprise Edition Introduction Bayoudhi Chaouki 1 Java EE - Objectifs Faciliter le développement de nouvelles applications à base de composants

Plus en détail

Programme du cycle ingénieur Cnam spécialité informatique par l alternance Année 2015-2016

Programme du cycle ingénieur Cnam spécialité informatique par l alternance Année 2015-2016 Programme du cycle ingénieur Cnam spécialité informatique par l alternance Année 2015-2016 Ingénieur en Informatique en Contrat de Professionnalisation - Année I1 RSX102 Technologies pour les applications

Plus en détail

PLAN PROJET. Binôme ou monôme (B/M): M. : abdlhaqmilan@gmail.com GSM : 00212640108250. : Gestion d'une agence de location de voiture.

PLAN PROJET. Binôme ou monôme (B/M): M. : abdlhaqmilan@gmail.com GSM : 00212640108250. : Gestion d'une agence de location de voiture. Développement d une application JAVA EE PLAN PROJET Binôme ou monôme (B/M): M Nom & Prénom : AZRAGUE Abdelhaq Email : abdlhaqmilan@gmail.com GSM : 00212640108250 Organisme Scolaire : Gestion d'une agence

Plus en détail

Acronyme : ALG. Cours T.P. T.D. Projet Stage. Présentiel Etudiant 38 26 42

Acronyme : ALG. Cours T.P. T.D. Projet Stage. Présentiel Etudiant 38 26 42 Acronyme : ALG - Intitulé UE : Algorithmique : graphes et complexité - Objectifs Cette UE est constituée de deux modules, le module ALG1 (graphes) et le module ALG2 (complexité). Le module ALG1 est consacré

Plus en détail

LES SCRIPTS CGI. Présentation Mise en œuvre La programmation Les variables d environnement

LES SCRIPTS CGI. Présentation Mise en œuvre La programmation Les variables d environnement LES SCRIPTS CGI Présentation Mise en œuvre La programmation Les variables d environnement LES SCRIPTS CGI Présentation Mise en œuvre La programmation Les variables d environnement OBJECTIFS Historiquement,

Plus en détail

Conception et Développement Orientés Objets Cours 1 : Introduction. 2 Les paradigmes de programmation. 3 Les concepts de la programmation objet

Conception et Développement Orientés Objets Cours 1 : Introduction. 2 Les paradigmes de programmation. 3 Les concepts de la programmation objet CNAM UV 19357 Année 2003-2004 David Delahaye David.Delahaye@cnam.fr Conception et Développement Orientés Objets Cours 1 : Introduction 1 Présentation de la valeur Ce cours s adresse à toute personne ayant

Plus en détail

Introduction ASP.NET

Introduction ASP.NET 1 Sommaire Introduction... 1 1 Framework... 2 1.1 Général (.NET)... 2 1.2 ASP.NET... 2 2 Prérequis... 2 3 Présentation des bases d un projet ASP.NET... 3 3.1 Création d un projet... 3 3.2 Site Web : Les

Plus en détail

Programmation Avancée pour le Web

Programmation Avancée pour le Web L3 Informatique Option : ISIL Programmation Avancée pour le Web RAMDANI Med U Bouira 1 Contenu du module Introduction aux applications Web Rappels sur les sites Web Conception d une application Web Notion

Plus en détail

Interopérabilité dans l embarqué. Eric OURSEL EURIWARE Architecte du système d information OPC Foundation Technical Advisory Council Member

Interopérabilité dans l embarqué. Eric OURSEL EURIWARE Architecte du système d information OPC Foundation Technical Advisory Council Member Interopérabilité dans l embarqué Eric OURSEL EURIWARE Architecte du système d information OPC Foundation Technical Advisory Council Member Plan La problématique de l interopérabilité dans l embarqué Les

Plus en détail

COMPUTER SCIENCE Paris 7 Denis Diderot

COMPUTER SCIENCE Paris 7 Denis Diderot COMPUTER SCIENCE Paris 7 Denis Diderot LICENCE 1 SEMESTER 2 (Spring) o Initiation à la programmation 2 o Concepts informatiques o Internet et outils o Mathématiques élémentaires 2 COURSE DESCRIPTION Initiation

Plus en détail

pythonocc: une plateforme de développement agile d applications CAO.

pythonocc: une plateforme de développement agile d applications CAO. pythonocc: une plateforme de développement agile d applications CAO. PyConFR 2009 Cité des Sciences et de l Industrie, Paris Thomas Paviot*, Jelle Feringa* *pythonocc project: tpaviot@gmail.com; jelleferinga@gmail.com

Plus en détail

change de peau! Club Utilisateurs Qual IT 10 Octobre 2013

change de peau! Club Utilisateurs Qual IT 10 Octobre 2013 change de peau! Agenda Pourquoi ces évolutions? La logique d évolution Présentation de la version 5.0 Nouvelles fonctionnalités, démonstration Roadmap Les évolutions prévues en 2014 et échange Clients,

Plus en détail

Réseaux. 1 Généralités. E. Jeandel

Réseaux. 1 Généralités. E. Jeandel 1 Généralités Réseaux Couche Application E. Jeandel Couche application Dernière couche du modèle OSI et TCP/IP Échange de messages entre processus Protocole Un protocole de niveau application doit spécifier

Plus en détail

Réseaux. Couche Application. E. Jeandel

Réseaux. Couche Application. E. Jeandel Réseaux Couche Application E. Jeandel 1 Généralités Couche application Dernière couche du modèle OSI et TCP/IP Échange de messages entre processus Protocole Un protocole de niveau application doit spécifier

Plus en détail

Les formations. Développeur Logiciel. ENI Ecole Informatique

Les formations. Développeur Logiciel. ENI Ecole Informatique page 1/5 Titre professionnel : Reconnu par l Etat de niveau III (Bac), inscrit au RNCP (arrêté du 12/10/07, J.O. n 246 du 23/10/07) (32 semaines) Unité 1 : Structurer une application 6 semaines Module

Plus en détail

SOMMAIRE Thématique : Réseaux et télécommunications

SOMMAIRE Thématique : Réseaux et télécommunications SOMMAIRE Thématique : Réseaux et télécommunications Rubrique : Réseaux - Télécommunications... 2 1 SOMMAIRE Rubrique : Réseaux - Télécommunications Evolution et perspective des réseaux et télécommunications...

Plus en détail

Programmation réseaux avec le langage Java

Programmation réseaux avec le langage Java Programmation réseaux avec le langage Java Février 2015 Ivan Madjarov Partie I Introduction à la programmation Java réseau 2 Introduction Le modèle OSI (Open System Interconnexion) 3 Routage et Passerelle

Plus en détail

Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée

Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée forax at univ-mlv dot fr - ParisJUG Java.next() - Mars 2012 What Else? Lambda == Inner class? Java a des lambdas depuis la version 1.1 Exemple utilisant

Plus en détail

Architecture des applications

Architecture des applications Architecture des applications Table des matières 1 Introduction 1 2 Les classes valeurs 2 2.1 Les Javaeans............................................. 2 2.2 Les différents types de Javaeans...................................

Plus en détail

Cahier de charges (Source : "Java EE - Guide de développement d'applications web en Java" par Jérôme Lafosse) Module. Site Web dynamique JSP / Servlet

Cahier de charges (Source : Java EE - Guide de développement d'applications web en Java par Jérôme Lafosse) Module. Site Web dynamique JSP / Servlet Cahier de charges (Source : "Java EE - Guide de développement d'applications web en Java" par Jérôme Lafosse) Module Site Web dynamique JSP / Servlet Sujet : betaboutique Soutenance le 04 / 01 /2013 &

Plus en détail

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

L Orchestration de Services Web avec Orchestra. Goulven Le Jeune Orchestra Project Manager L Orchestration de Services Web avec Orchestra Goulven Le Jeune Orchestra Project Manager D1 Bull, Architecte d un Monde Ouvert : contributeur et acteur majeur de l'open Source Applications métiers Infrastructures

Plus en détail

Master 2 MIAGE NTDP Nom : Le Prof! UE «Web Services et SOA», Prénom

Master 2 MIAGE NTDP Nom : Le Prof! UE «Web Services et SOA», Prénom Master 2 MIAGE NTDP Nom : Le Prof! UE «Web Services et SOA», Prénom Epreuve écrite individuelle 8 Décembre 2008, durée 45 mns Aucun document autorisé => Finalement, autorisés et semble-t-il utiles!!...

Plus en détail

Réseaux. Couche Application. E. Jeandel. Emmanuel.Jeandel at lif.univ-mrs.fr. E. Jeandel, Lif Réseaux, Couche Application 1/12

Réseaux. Couche Application. E. Jeandel. Emmanuel.Jeandel at lif.univ-mrs.fr. E. Jeandel, Lif Réseaux, Couche Application 1/12 Réseaux Couche Application E. Jeandel Emmanuel.Jeandel at lif.univ-mrs.fr E. Jeandel, Lif Réseaux, Couche Application 1/12 Contenu 1 Généralités E. Jeandel, Lif Réseaux, Couche Application 2/12 Couche

Plus en détail

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

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL Un bus de services Un bus de services (ESB) permet d assembler des web services existants, le résultat de cet

Plus en détail

DIFF DE BASE. Serendip serendip@via.ecp.fr. Samy samy@via.ecp.fr

DIFF DE BASE. Serendip serendip@via.ecp.fr. Samy samy@via.ecp.fr DIFF DE BASE Serendip serendip@via.ecp.fr Samy samy@via.ecp.fr I. INTRODUCTION AU RÉSEAU RÉSEAU : /ʁE.ZO/ N.M. DÉR., AU MOYEN DU SUFF. -EAU, DE L'A. FR. REIZ, REZ «FILET» (RETS); RÉSEAU A ÉTÉ EN CONCURRENCE

Plus en détail

Micro guide Struts. par Jérémy Buget

Micro guide Struts. par Jérémy Buget Micro guide Struts par Jérémy Buget Table des matières 1) Introduction...2 2)Définitions...3 2) Déroulement...4 3) Schéma récapitulatif...5 4) Code des différents composants sus-cités... 6 5)Liens utiles...

Plus en détail

CAHIER DES CHARGES D IMPLANTATION D EvRP V3

CAHIER DES CHARGES D IMPLANTATION D EvRP V3 CAHIER DES CHARGES D IMPLANTATION D EvRP V3 Tableau de diffusion du document Document : Cahier des Charges d Implantation EVRP V3 Version 42 Etabli par Département Accompagnement des Logiciels Vérifié

Plus en détail

Short-Circuit Introduction a Spring. Cours Spring. Spring utilise certaines technologies comme :

Short-Circuit Introduction a Spring. Cours Spring. Spring utilise certaines technologies comme : Cours Spring 1 Présentation Générale Historique Framework créé en 2002 par Rod Johnson, afin de proposer une réelle alternative technique aux EJB s, alors gouffre de performance en terme d applications

Plus en détail

VisualAge Pacbase 3.0 et WebSphere

VisualAge Pacbase 3.0 et WebSphere VisualAge Pacbase 3.0 et WebSphere Conférence VisualAge Pacbase 13 décembre 2001 Fernand Bonaguidi Jean-François Lévi 1 La plateforme logicielle WebSphere Applications de s et de Partenaires Accélérateurs

Plus en détail