France Télécom R&D Le présent document contient des informations qui sont la propriété de France Télécom. L'acceptation de ce document par son destinataire.

Slides:



Advertisements
Présentations similaires
L'environnement C.O.R.B.A. utilisation avec Java
Advertisements

Introduction aux environnements répartis
Réflexivité et réseaux d’ information
Rhum Un ORB réactif Laurent Hazard FT R&D DTL/ASR 22/02/02.
Programmation par Objets 1 Module IN504 Animé par : Marianne Huchard Marie-Laure Mugnier Khalil Ben Mohamed
A propos de java Sun, fin 1995 C++ nettoyé semi-interprété
Invocation de Méthode à des Objets distants RMI et Corba
ESSI AM Dery Merci à Rémi Vankeisbelck, Michel Riveill etc
1 Plan de lenseignement Cours Introduction au réseau via les objets distants (Application à RMI) Ce que cache RMI : programmation socket – mode connecté
Module SI2 Applications réparties
ORB (1/2) ORB : Object Request Broker
Invocation de Méthode à des Objets distants Exemple : CORBA
1 I. Bus logiciel ? Mireille Blay-Fornarino Daprès et Sacha Et (cf. références en bas.
Des sockets à RMI Programmation réseau versus programmation objet
CORBA Common Object Request Broker Architecture
Architecture CORBA réseau Objet Corba Application Serveur
ESSI AM Dery Merci à Rémi Vankeisbelck, Michel Riveill etc
Module SI4 Applications réparties
Des sockets à RMI. Pourquoi ? Maturation de la technologie orientée objet –ADA, Modula –Smalltalk, C++, Java Maturation des communications Client- Serveur.
Introduction aux applications réparties
Object Management Architecture (OMA)
Cours 5.3 : XML et les architectures N-tiers – Tier Présentation
Cours 6 : XML et les architectures N-tiers – Tier Applicatif
Cours 5 : Les Web Services et WSDL Mars Version 1.0 -
(Nom du fichier) - D1 - 01/03/2000 Le présent document contient des informations qui sont la propriété de France Télécom. L'acceptation de ce document.
D1 - 01/03/2014 Le présent document contient des informations qui sont la propriété de France Télécom. L'acceptation de ce document par son destinataire.
TD 1 IJA Introduction Objet, méthode, attribut Classe, instance

Laboratoire d’Informatique du Littoral
Common Gateway Interface
LOG 02 Bases de Données Avancées Rappels sur JSP / Servlet
Découverte et description de services distribués Oussama KASSEM ZEIN.
Etude des Technologies du Web services
XML-Family Web Services Description Language W.S.D.L.
JavaBeans Réalise par: EL KHADRAOUY TARIK AOUTIL SAFOWAN.
Les méthodes en java Une méthode est un regroupement d’instructions ayant pour but de faire un traitement bien précis. Une méthode pour être utilisée.
SERVLETS PRESENTATION
Java Remote Method Invocation (RMI)
Programmation Approche composants Ing5 SI
Introduction au paradigme objet Concepts importants surcharge (overload) redéfinition (override) Définition d’une classe Définition des attributs.
© 2007 P. Van Roy. All rights reserved. FSAB1402: Informatique 2 Le Langage Java et les Exceptions Peter Van Roy Département dIngénierie Informatique,
Quelques notes sur CORBA F. Boyer, Oct Principes Programmation distribuée Multi-plateformes Notion de client et de serveur Notion de stub et de.
CAT 2000 LES MIDDLEWARES Présenté par : Tagmouti Siham Smires Ali
Interopérabilité JOnAS - CORBA
Les services communs Les composantes du bus
P. Van Roy, LINF1251 LINF1251: Le Langage Java Peter Van Roy Département dIngénierie Informatique, UCL
1 1 Corba avec Java et C Jean-Marc Vanel Transiciel - Sogeti.
Introduction au bus CORBA
Leçon 1 : notion dobjet IUP Génie Informatique Besançon Méthode et Outils pour la Programmation Françoise Greffier Université de Franche-Comté.
Document élaboré à Centrale Paris par Pascal Morenton LES TECHNOLOGIES DU WEB 1. LES PHASES D UN DEPLOIEMENT DE RESEAUX 2. LE LANGAGE HTML 3. LE LANGAGE.
J2EE vs .NET Réaliser par : SEIF ENNACER BADRA && CHETOUI RIM.
CORBA (Common Request Broker Architecture)
SGBD orientés Objet Standards : OMG et ODMG.
Présentation de CORBA et de IIOP
CORBA Un concept de l ’OMG Mathieu Estival Biomédical, 3°Année.
Cycle de développement iup MIAGe 3° année Projet MIAGe Toulouse – Groupe 21 CORBA.
1 Partie 2 L'environnement C.O.R.B.A. U tilisation avec Java et C++ Corba avec Java et C Jean-Marc Vanel Transiciel - Sogeti.
Présentation Interception Log2XMI XMI Perspectives CorbaTrace Florian Champalle Audrey Jaccard Etienne Juliot Nicolas Lemoullec Antoine Parra del Pozo.
1 Extension du modèle de composants CORBA avec accès concurrent à des données partagées Travail réalisé par : Landry BREUIL PFE, ISIMA Encadrants : Gabriel.
© 2005 P. Van Roy. All rights reserved. FSAB1402: Informatique 2 Le Langage Java Peter Van Roy Département d’Ingénierie Informatique, UCL
Développer avec ORBacus Partie 1 – Les préalables.
Les sockets.
Les RPC remote procedure call
Les Servlets Présentation Cycle de vie Principe de fonctionnement
PaCO++ André Ribes Réunion Hydrogrid Rennes 15/09/03.
Modèle à objets et sérialisation Olivier ChamlaFrançois Chastanet.
Java Remote Method Invocation
Parquet Geoffrey 3 ARIL EXIA.CESI ARRAS. Présentation du MLD Présentation de la persistance Présentation récapitulatif du projet JSP/SERVLET MVC Cycle.
Applications distribuées Introduction Jean-Jacques LE COZ.
CORBA. Agenda ë L ’OMG ë Object Management Architecture (OMA) ë Le langage IDL ë Architecture CORBA ë Intéropérabilité : CORBA 2 ë Les composants de l.
Transcription de la présentation:

France Télécom R&D Le présent document contient des informations qui sont la propriété de France Télécom. L'acceptation de ce document par son destinataire implique, de la part de ce dernier, la reconnaissance du caractère confidentiel de son contenu et l'engagement de n'en faire aucune reproduction, aucune transmission à des tiers, aucune divulgation et aucune utilisation commerciale sans l'accord préalable écrit de France Télécom R&D 1 Introduction à Corba Réunion Cube – 24/10/2003 P. Déchamboux (FTR&D DTL/ASR)

France Télécom R&D 2 Contenu et déroulement è Références    è Plan  vision Corba  mise en oeuvre de Corba  liaison et transport dans Corba  services « systèmes » et canevas de Corba è Annexe  exemple : HelloWorld

France Télécom R&D 3 Vision de Corba

France Télécom R&D 4 OMG : concepts-clés è Permettre l’interopérabilité des composants / applications par l’intermédiaire d’un mode de coopération unifié : l’appel d’objets distants è Gérer l’hétérogénéité des réseaux, machines, systèmes et langages è Vision utilisateur = langage pivot commun : OMG-IDL è Offrir une architecture globale

France Télécom R&D 5 OMG : les objectifs techniques è Liaison avec tous les langages è Transparence des invocations è Invocation statique et dynamique è Système auto-descriptif è Activation automatique è Interopérabilité entre bus

France Télécom R&D 6 OMG : vision globale è Common Object Request Broker Architecture CORBA  appel de méthode réparti transparent passages de paramètres : in, out, in/out types de paramètres : types de base (entiers, string, etc), références d’objets, objets par valeur  un bus à objets répartis (ORB) transport des requêtes, activation des objets  des services de base (CORBAservices)  des utilitaires communs (CORBAfacilities)  des interfaces de domaines = objets métiers « interopérabilité sémantique »

France Télécom R&D 7 OMA : l’architecture globale Licences TransactionsPersistancePropriétésChangementsEvents NommageVendeurSécuritéRelationsCollectionsTempsExternalisation Interrogations Cycle de vie Concurrence Services objet communs Workflow DataWareIHM Administration Utilitaires communs Finance Télécoms Santé Interfaces de domaine Objets applicatifs Spécifiques Bus d’objets répartis

France Télécom R&D 8 ORB OMG : le modèle client/serveur objet Objet CORBA Etat Code d’implantation Référence d’objet Interface d’objet Requête Activation

France Télécom R&D 9 Mise en oeuvre de Corba

France Télécom R&D 10 OMG-IDL : le langage d’interfaces è Rôle du langage  décrire les interfaces des objets  langage pivot entre applications  générer des squelettes de programme dans les langages de programmation des applications

France Télécom R&D 11 OMG-IDL : mise en oeuvre des interfaces è Projection des descriptions OMG-IDL vers les langages d’implantation des clients et des serveurs (e.g., C, C++, Java, etc).  mode « statique » è Instanciation sous forme d’objets CORBA des descriptions OMG-IDL dans un référentiel d’interfaces.  mode « dynamique »

France Télécom R&D 12 CORBA : les composantes du bus Bus de communication Interface du bus Interface d’invocation statique Interface d’invocation dynamique SIIDII ORB SSIDSI OA Adaptateur d’objet Interface de squelettes statiques Interface de squelettes dynamiques IR Référentiel des interfaces ImplR Référentiel des implantations

France Télécom R&D 13 Liaison et transport dans Corba

France Télécom R&D 14 Les couches de transport de CORBA è GIOP : protocole d’interopérabilité entre bus de la norme CORBA 2  support à l’appel de méthode (enveloppe = REQUEST, REPLY, etc)  encodage des données : CDR  GIOP sur Internet = Internet Inter ORB Protocol (IIOP)  champs « service context » (ex: standardisation ctxt transactions, sécurité)

France Télécom R&D 15 Nommage dans Corba è Noms du domaine Corba  Interoperable Object Reference : IOR  identification protocole  interface OMG-IDL è Sous-domaine Corba/Internet  adresse IP + port  clé de format libre (dépendant de l’adaptateur d’objet) identificateur d’adaptateur d’objet clé de format libre (dépendant de l’adaptateur d’objet)

France Télécom R&D 16 Emballeur GIOP Talon client (IOR) Interface applicative (issue de l’interface IDL) IOR servant Adaptateur d’objet Mise en place d’une liaison Emballeur GIOP Squelette serveur Servant applicatif Invocation Liaison IIOP

France Télécom R&D 17 Services « systèmes » et canevas de Corba

France Télécom R&D 18 Les services communs (1) è Services de localisation d’objets  service de nommage (Naming) pour retrouver un objet par un nom service de type « pages blanches »  service de courtage (Trader) pour retrouver un objet par des propriétés service de type « pages jaunes »

France Télécom R&D 19 Les services communs (2) è Services de communications asynchrones  Events, Notification, Messaging è Services de sûreté de fonctionnement  Security, Transactions, Concurrence è Services concernant la vie des objets  Life Cycle, Property, Relationship, Externalization, Persistent Object, Query, Collection, Versionning, Time, Licencing

France Télécom R&D 20 Exemple : « Hello World » en Java

France Télécom R&D 21 Chaine de production de programme Hello.idl HelloOperations.java Hello.java HelloHelper.java HelloHolder.java _StubForHello.java Compilateur OMG-IDL / Java HelloClient.java HelloPOA.java HelloPOATie.java Client Serveur HelloServeur.java HelloImpl.java

France Télécom R&D 22 De l’IDL à Java è Interface OMG-IDL Hello è Interface Java HelloOperations, Hello è Classes Java HelloHelper, HelloHolder interface Hello { void doHello(); }; public interface HelloOperations { public void doHello(); } public interface Hello extends HelloOperations, org.omg.CORBA.Object, org.omg.CORBA.portable.IDLEntity {}

France Télécom R&D 23 Implantation du serveur Corba public class HelloServeur { public static void main(String args[]) { // Initialisation du Bus Corba et d’un POA org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init(args, null); org.omg.PortableServer.POA poa = POAHelper.narrow(orb.resolve_initial_references("RootPOA")); poa.the_POAManager().activate(); // récupération du serveur de nom org.omg.CosNaming.NamingContext ns = org.omg.CosNaming. NamingContextHelper.narrow( orb.resolve_initial_references("NameService")); // Creation du servant et enregistrement au serveur de noms HelloImpl hello = new HelloImpl(); ns.rebind( new org.omg.CosNaming.NameComponent[] {new NameComponent("HelloObj","")}, hello); // Mise en attente du serveur orb.run(); }

France Télécom R&D 24 Implantation du client Corba public class HelloClient { public static void main(String args[]) { // Initialisation du Bus Corba org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init(args, null); // récupération du serveur de nom org.omg.CosNaming.NamingContext ns = org.omg.CosNaming. NamingContextHelper.narrow( orb.resolve_initial_references("NameService")); // Récupération de la souche depuis le serveur de nom org.omg.CORBA.Object obj_ref = ns.resolve(new org.omg.CosNaming.NameComponent[] {new NameComponent("HelloObj","")}); Hello hello = HelloHelper.narrow(obj_ref); // Invocation de l'objet distant hello.doHello(); }

France Télécom R&D 25 Les classes générées (client et serveur) è Classe _StubForHello : implantation du talon  sert à envoyer les requêtes  utilisé en lieu et place de l'objet Hello dans le client è Classe HelloPOA  Classe HelloPOATie  reçoit et décode les requêtes  implantation par héritage  implantation par délégation public class HelloImpl extends HelloPOA { public HelloImpl() {} public void doHello() { System.out.println("Hello world!"); }

France Télécom R&D 26 Corba dynamique

France Télécom R&D 27 L’invocation dynamique è Référentiel d’interfaces (IR)  accessible comme objet Corba  gestion de méta-objets Corba (ModuleDef, InterfaceDef, OperationDef, AttributeDef, TypedefDef, …) è API (DII) de construction de requêtes è Un objet Request = un nom d’opération, une liste de couples valeur - type (au sens de l’IR) et une structure pour le résultat  invoke  send_deferred + get_response, poll_response  send_oneway

France Télécom R&D 28 Le squelette dynamique è API (DSI) de décodage de requêtes è Pas d’utilisation de squelettes pré-générés è Utilisée pour implanter dynamiquement des objets è Cas d’utilisation : création de passerelles