Remote Method Invocation en Java (RMI)
|
|
- Tristan Plamondon
- il y a 8 ans
- Total affichages :
Transcription
1 Remote Method Invocation en Java (RMI) Modélisation et construction des applications réparties (Module M-4102C) J. Christian Attiogbé Fevrier 2015 J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 1 / 24 Introduction : Remote Method Invocation (RMI) RMI : extension objet de RPC Le mécanisme RMI est l extension aux concepts OBJET, du Remote Procedure Call (RPC). Principe général du RMI Le RMI permet, de la même manière que le RPC, d appeler une méthode sur une machine distante. La machine distante offre à travers une application, un objet O accessible à distance ; les méthodes de O sont ainsi appelées à distance par des applications dites clientes. La machine distante doit être connue des applications clientes. L objet offert à distance et ses méthodes doivent être connues des machines clientes. J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 2 / 24
2 Principe du Remote Procedure Call Machine C Machine S Processus PC debut p(a, b,...) procedure p(...) fin Figure : Principe du RPC J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 3 / 24 Intérêt et difficultés du RPC Structuration simple du code du client Abstraction du réseau Facilité des mises à jour Complexité de la gestion des paramètres Complexité de la sémantique Difficultés de gestion des pannes (clients ou serveur) Gestion des aspects hétérogénéité J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 4 / 24
3 Mise en œuvre du RPC L interaction RPC est mise en œuvre par une structuration en couche. Machine C Processus PC p(a, b,...) communic. logique Machine S procedure p(...) talon client liaison établie talon serveur communic. physique 6 Figure : Interaction client/serveur avec RPC Pour que cela marche, le client doit donc connaitre l environnement du serveur. J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 5 / 24 Mise en place de l environnement du serveur La procédure appelée à distance est au préalable publiée via un annuaire (serveur de noms : nomprocédure adrserveur, numport). L annuaire sera interrogé par les clients avant de pouvoir communiquer avec les serveurs. Machine C Processus PC p(a, b,...) communic. logique Machine S procedure p(...) talon client 3 annuaire 1 talon serveur 4 8 communic. physique 7 5 Figure : Principe du RPC J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 6 / 24
4 Remote Method Invocation en Java En Java, une application ordinaire s exécute dans la machine virtuelle locale. Dans le cadre des applications réparties, le mécanisme RMI permet d appeler et d exécuter une méthode dans une machine virtuelle distante, différente de celle de l application appelante. J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 7 / 24 Principe du mécanisme RMI en Java Une application objet Java offre sur une machine distante un objet accessible à distance et dont les méthodes peuvent être invoquées. L application serveur, construit un objet accessible à distance, et l enregistre auprès d un serveur rmi, pour le rendre visible des applications clientes. Java offre pour cela le package java.rmi avec plusieurs sous-packages java.rmi.server, java.rmi.dgc,... J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 8 / 24
5 Principe du mécanisme RMI en Java Au cœur du principe Java RMI se trouvent, d une part un objet accessible à distance OD (créé par le côté serveur), d autre part la classe stub (talon) qui représente l objet OD côté client et la classe skeleton (squelette) qui représente l objet OD côté serveur. L indépendance et la transparence des serveurs est réalisée par le mécanisme d annuaire rmi qui contient les objets publiés et les serveurs qui les publient. L exclusion mutuelle des accès aux objets est assurée par le mécanisme de synchronisation de Java Les applications clientes s adressent d abord à l annuaire rmi pour pouvoir établir le lien avec les serveurs d objets. J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 9 / 24 Mécanisme Java RMI : Serveur Appli. serveur 1. création objet serveur de nom rmi 2. enregistrement Figure : Création et publication d un objet accessible à distance J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 10 / 24
6 Mécanisme Java RMI : Client Appli. Client 1. demande objet 2. référence serveur de nom rmi Stub Figure : Récupération d une référence à l objet distant J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 11 / 24 Méthode pour le client/serveur RMI en Java Appli. Client Appli. serveur appel/résultat echange execution/résultat Stub comm physique skel Figure : Interaction RMI via stub et skel J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 12 / 24
7 Démarche : côté d une application serveur RMI 1 Créer un objet qu on souhaite rendre accessible à distance (nomobjetad) 2 Enregistrer l objet créé dans le registre de noms d un serveur, en attribuant à l objet une URL spécifique : rmi://nomouadresseserveur/nomobjetad Pour que l application serveur puissent enregistrer des objets et que les clients puissent accéder aux objets à distance, le registre de noms RMI (annuaire rmi) doit d abord être exécuté sur la machine serveur (il utilise le port 1099). rmiregistry & J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 13 / 24 Création d un objet accessible à distance Tout objet accessible à distance hérite de la classe Java.rmi.Remote. Il s agit d une interface qui ne contient aucune méthode. On spécifie l interface de l objet accessible à distance en héritant de la classe Java.rmi.Remote puis en définissant les méthodes qu on souhaite rendre accessibles aux clients. Les communications réseaux pouvant échouer, on doit gérer les exceptions sur toutes les méthodes. /* fichier.java de la classe moninterfacedistant : Serveur */ import java.rmi.*; public interface moninterfacedistant extends Remote { /* une méthode de test */ public String getcode() throws RemoteException; } J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 14 / 24
8 Implantation de l interface côté serveur Le serveur implémente son interface, avec le code java nécessaire. Le mécanisme Java RMI offre la classe UnicastRemoteObject qui contient les primitives permettant l appel de l objet distant ; par exemple, l appel par le stub du client qui est unique (le stub n a qu une seule référence sur l objet). La classe qui implémente l interface doit hériter de la classe UnicastRemoteObject. Le mécanisme Java RMI offre l utilitaire rmic pour générer le talon (stub) et le squelette (skeleton) à partir du bytecode (issu de la compilation java de la classe objet distant) javac moninterfacedistant.java // compilation interface javac monobjetaccessibledistance.java // compilation implémentation rmic monobjetaccessibledistance // génération stub et skel (...stub.class...skel.class) J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 15 / 24 Implantation de l interface côté serveur /*.java de la classe monobjetaccessibledistance : Serveur */ import java.rmi.*; import java.rmi.server.*; public class monobjetaccessibledistance extends java.rmi.server.unicastremoteobject implements moninterfacedistant { /* constructeur */ public monobjetaccessibledistance () throws RemoteException { super ();} public String getcode() throws RemoteException { return "camarche"; } } J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 16 / 24
9 Création et publication d un objet par le serveur Le mécanisme Java RMI offre la méthode rebind via la classe Naming pour enregistrer un objet dans le registre de nom du serveur. import... public class testserveurrmi {... //constructeur de la classe + Exception /* Création et enregistrement d un objet par l appli serveur */ public static void main (String[] args) throws RemoteException, MalformedURLException, UnknownHostException { monobjetaccessibledistance testsrvtprmi = new monobjetaccessibledistance(); // création de l obj try{naming.rebind("rmi://"+java.net.inetaddress.getlocalhost()+ "1099"+"/testSRVTPrmi",testSRVTPrmi); } catch (MalformedURLException ee) { throw new MalformedURLException("Pbm de url"); } // idem pour les autres catch } } J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 17 / 24 Mise au point Serveur : les import /** * TP Java RMI - Appli Serveur 2014/2015 */ import java.rmi.*; import java.net.malformedurlexception; import java.net.unknownhostexception; public class testsrvtprmi { static public void testsrvtprmi() throws RemoteException {... } J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 18 / 24
10 Méthode d accès à l objet, par le client RMI L application client, s adresse au serveur de noms auprès duquel l objet est enregistré ; elle utilise le nom complet rmi://adrserveur:numport/nomobjet/ Il récupère un stub (talon) de l objet, à l aide de la méthode lookup de la classe Naming. L objet récupéré est de la classe Remote. L objet doit être casté en la classe Interface qui définit les méthodes utilisables de l objet distant ; ensuite on appelle les méthodes. J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 19 / 24 Méthode d accès à l objet, par le client RMI import java.rmi.*; /* clientrmi.java : coté client */... public class clientrmi { static public void clientrmi() throws RemoteException { } public static void main (String[] args) throws RemoteException,MalformedURLException, NotBoundException{ try { Remote monstub = Naming.lookup("rmi://"+ java.net.inetaddress.getlocalhost()+"1099"+"/testsrvtprmi"); if (monstub instanceof moninterfacedistant) { String lecode = ((moninterfacedistant)monstub).getcode(); System.out.println("code recupere = "+lecode); } catch (NotBoundException ee) { throw new NotBoundException("Pbm de liaison");} } // idem pour les autres catch exceptions } J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 20 / 24
11 Conclusion Java RMI La technologie RMI (ici Java RMI) est un intergiciel (middleware basé sur les objets et qui permet de réaliser des applications distribuées en Java. Elle nécessite de bien penser son application et le partage de données (les objets acessibles à distance) à l avance. Technologie mature Bien intégrée dans les environnements Java (donc NON interopérable) Autre middleware non basé sur les objets : Message-Oriented Middleware (MOM) J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 21 / 24 Ouvertures RMI dans d autres environnements RPyC (Rempote Python call) Scala + Java? (puisque Scala mange le Java, on doit pouvoir lui faire gober le Java RMI) RMI et interopérabilité Les Interopérables : Advanced Message Queuing Protocol CORBA Babel Middleware (pour le calcul scientifique) SWIG J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 22 / 24
12 Exercices : à volonté Modélisation à l aide de Réseaux de Petri + Client/Serveur de ressources (via le nom de la ressources)... Clients/Serveur de ressources avec des paramètres Clients/Serveur de classement, score,... de matchs (clients = équipes)... J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 23 / 24 Références Sacha Krakowiak, Systèmes et Applications Réparties, Université Joseph Fourier A.S. Tannenbaum, Distributed Operating Systems Prentice Hall. Martin Quinson, Cours de Programmation d Applications Réparties A.D. Birell and B.J. Nelson, Implementing remote procedure calls ACM Trans. on Comp. Syst., vol. 2(1), Satyanarayanan, H. Siegel Parallel communication in a large distributed environment, ACM Trans. On Comp, vol 39(3), 1990 http: //docs.oracle.com/javase/tutorial/rmi/overview.html java-rmi-client-server-on-different-machines J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation en Java (RMI) 24 / 24
Remote Method Invocation (RMI)
Remote Method Invocation (RMI) TP Réseau Université Paul Sabatier Master Informatique 1 ère Année Année 2006/2007 Plan Objectifs et Inconvénients de RMI Fonctionnement Définitions Architecture et principe
Plus en détailRMI le langage Java XII-1 JMF
Remote Method Invocation (RMI) XII-1 Introduction RMI est un ensemble de classes permettant de manipuler des objets sur des machines distantes (objets distants) de manière similaire aux objets sur la machine
Plus en détailRMI. Remote Method Invocation: permet d'invoquer des méthodes d'objets distants.
RMI Remote Method Invocation: permet d'invoquer des méthodes d'objets distants. Méthode proche de RPC. Outils et classes qui rendent l'implantation d'appels de méthodes d'objets distants aussi simples
Plus en détailCalcul Parallèle. Cours 5 - JAVA RMI
Calcul Parallèle Cours 5 - JAVA RMI Eric Goubault Commissariat à l Energie Atomique & Chaire Ecole Polytechnique/Thalès Saclay Le 28 février 2012 Eric Goubault 1 28 février 2012 Remote Method Invocation
Plus en détailJava RMI. Arnaud Labourel Courriel: arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 8 mars 2011
Java RMI Arnaud Labourel Courriel: arnaud.labourel@lif.univ-mrs.fr Université de Provence 8 mars 2011 Arnaud Labourel (Université de Provence) Java RMI 8 mars 2011 1 / 58 Web services Services par le réseau
Plus en détailProgrammation répartie RPC & RMI
Programmation répartie RPC & RMI Plan du cours Introduction Définitions Problématiques Architectures de distribution Distribution intra-applications Notion de processus Programmation multi-thread Distribution
Plus en détailRemote Method Invocation Les classes implémentant Serializable
Parallélisme Architecture Eric Goubault Commissariat à l Energie Atomique Saclay Classe qui implémente la méthode distante (serveur): - dont les méthodes renvoient un objet serializable - ou plus généralement
Plus en détailIntergiciel - concepts de base
Intergiciel - concepts de base Ada Diaconescu, Laurent Pautet & Bertrand Dupouy ada.diaconescu _at_ telecom-paristech.fr Rappel : système réparti Système constitué de multiples ressources informatiques
Plus en détailConception de serveurs d'applications ouverts
Conception de serveurs d'applications ouverts Stéphane Frénot 3 Un modèle d'exécution standard Application Stéphane Frénot 4 1 Répartition "horizontale" d'une application Application de Présentation Application
Plus en détailModèle client-serveur Plan. Modèle client-serveur. Modèle client-serveur définition. Modèle client-serveur communication par messages.
Modèle client- Modèle client- Plan Michel RIVEILL riveill@unice.fr Polytech Nice - Sophia Principe Traitement des défaillances Désignation, localisation et liaison Intégration aux langages de programmation
Plus en détailJava - RMI Remote Method Invocation. Java - RMI
Remote Method Invocation Yann Viémont Université de Versailles St-Quentin Plan 1. Introduction 2. Rappels sur les RPC 3. Le modèle objet de Java-RMI 4. Architecture générale 1. Introduction = Disponible
Plus en détailPrincipes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle
2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle 1 Principes 2 Architecture 3 4 Aperçu d utilisation
Plus en détail[APPLICATON REPARTIE DE VENTE AUX ENCHERES]
2012 Polytech Nice- Sophia El Hajji Khalil Yousfi Hichem SI4 - Log [APPLICATON REPARTIE DE VENTE AUX ENCHERES] Sommaire Architecture de l application... 3 Le Serveur... 3 Le Client... 4 Passage en CORBA...
Plus en détailSoftware Engineering and Middleware A Roadmap
Software Engineering and Middleware A Roadmap Ecrit par: Dr. Wolfgang Emmerich Présenté par : Mustapha Boushaba Cours : IFT6251 Wolfgang Emmerich Enseignant à University College London: Distributed Systems
Plus en détailNFP111 Systèmes et Applications Réparties
NFP111 Systèmes et Applications Réparties 1 de 34 NFP111 Systèmes et Applications Réparties Cours 7 - CORBA/Partie 1 Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon
Plus en détailIntroduction aux applications réparties
Introduction aux applications réparties Noël De Palma Projet SARDES INRIA Rhône-Alpes http://sardes.inrialpes.fr/~depalma Noel.depalma@inrialpes.fr Applications réparties Def : Application s exécutant
Plus en détailDéveloppement, déploiement et sécurisation d'applications JEE
JBoss Développement, déploiement et sécurisation d'applications JEE Franck SIMON Résumé Ce livre sur JBoss s'adresse aux développeurs Java quotidiennement confrontés au développement et au déploiement
Plus en détailProgrammer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)
Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes
Plus en détailGEI 465 : Systèmes répartis
Université de Sherbrooke GEI 465 : Systèmes répartis Travaux à effectuer Ahmed Khoumsi Automne 2004 Page 1 Les deux premiers travaux que vous effectuerez vous donneront, respectivement, l occasion d utiliser
Plus en détailIntroduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
Plus en détailJava Naming and Directory Interface
Introduction Java Naming and Directory Interface Gaël Thomas gael.thomas@lip6.fr Université Pierre et Marie Curie Master Informatique M2 Spécialité SAR Java Naming and Directory Interface (JNDI) Java Standard
Plus en détailProgrammation réseau avec Java. 3/7 RMI, un peu de sécurité et CORBA
Programmation réseau avec Java 3/7 RMI, un peu de sécurité et CORBA Olivier Ricou 5 juin 2008 Java, comme CORBA avant, permet d exécuter des taches à distances avec la RMI. Cette partie aborde les points
Plus en détailIntergiciels pour la répartition CORBA : Common Object Request Broker. Patrice Torguet torguet@irit.fr Université Paul Sabatier
Intergiciels pour la répartition CORBA : Common Object Request Broker Patrice Torguet torguet@irit.fr Université Paul Sabatier Plan du cours 2 Introduction à CORBA Architecture de l ORB Implémentation
Plus en détailEtude critique de mécanismes de sécurité pour l architecture Jini
UNIVERSITE LIBRE DE BRUXELLES Année académique 2001-2002 Faculté des Sciences Département d Informatique Etude critique de mécanismes de sécurité pour l architecture Jini Pierre Stadnik Directeur de Mémoire:
Plus en détailProgrammation Objet Java Correction
INSA - 4 AE 2007 2008 Durée : 1H00 Contrôle Programmation Objet Java Correction Consignes Tous les documents sont autorisés, mais ils seront peu utiles. Indiquez vos nom et prénom sur chaque feuille. Le
Plus en détailDis papa, c est quoi un bus logiciel réparti?
Dis papa, c est quoi un bus logiciel réparti? Raphael.Marvie@lifl.fr LIFL IRCICA Equipe GOAL Octobre 2006 10. Des sockets aux bus logiciels répartis 1 0. Une application répartie 2 Objectif Découvrir la
Plus en détailArchitecture applicative et Cartographie
Architecture applicative et Cartographie Mineure SOA Idir AIT SADOUNE idir.aitsadoune@supelec.fr Programme 7 nov. 14 nov. 21 nov. Introduction. Enjeux, rôle de l'architecte SI Partie n 1 du cas d'étude
Plus en détail2 Chapitre 1 Introduction
1 Introduction Ce livre présente les Enterprise JavaBeans 2.0 et 1.1 qui constituent la troisième et la deuxième version de la spécification des Enterprise JavaBeans. Tout comme la plate-forme Java a révolutionné
Plus en détailProjet gestion d'objets dupliqués
Projet gestion d'objets dupliqués Daniel Hagimont Daniel.Hagimont@enseeiht.fr 1 Projet Service de gestion d'objets dupliqués Mise en cohérence lors de la prise d'un verrou sur un objet Pas de verrous imbriqués
Plus en détailAuto-évaluation Programmation en Java
Auto-évaluation Programmation en Java Document: f0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION PROGRAMMATION EN
Plus en détailServeur d'application Client HTML/JS. Apache Thrift Bootcamp
Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/
Plus en détailStructure d un programme et Compilation Notions de classe et d objet Syntaxe
Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types
Plus en détailConception des systèmes répartis
Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les
Plus en détailComposants Logiciels. Le modèle de composant de CORBA. Plan
Composants Logiciels Christian Pérez Le modèle de composant de CORBA Année 2010-11 1 Plan Un rapide tour d horizon de CORBA 2 Introduction au modèle de composant de CORBA Définition de composants CORBA
Plus en détailPlan du cours. Autres modèles pour les applications réparties Introduction. Mode de travail. Introduction
Plan du cours Autres modèles pour les applications réparties Introduction Riveill@unice.fr http://rangiroa.polytech.unice.fr Notre terrain de jeu : les systèmes répartis Un rappel : le modèle dominant
Plus en détailDescription de la formation
Description de la formation Modalités Ce parcours de formation est un parcours en alternance, d une durée de 2ans, à raison d une semaine de formation par mois, soit 770 heures et de trois semaines de
Plus en détailSynchro et Threads Java TM
Synchro et Threads Java TM NICOD JEAN-MARC Master 2 Informatique Université de Franche-Comté UFR des Sciences et Techniques septembre 2008 NICOD JEAN-MARC Synchro et Threads avec Java TM 1 / 32 Sommaire
Plus en détailLMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour
LMI 2 Programmation Orientée Objet POO - Cours 9 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Faculté des Sciences - Univ. Artois Février 2011 Les collections
Plus en détailNSY102. Conception de logiciels Intranet Introduction
Conception de logiciels Intranet Introduction Cnam Paris jean-michel Douin, douin au cnam point fr 6 Février 2009 Une Introduction 1 Sommaire Introduction Généralités Tendances historique API & Intergiciel
Plus en détailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailEXA1415 : Annotations JavaEE : @Local, @Stateful
EXA1415 : Annotations JavaEE : @Local, @Stateful Sur une idée de P. Sécheresse sur http://developpez.com (http://tinyurl.com/5gr57j) Diapo 1 Objectif Créer un EJB CalculatriceBean (V1) Contient une opération
Plus en détailÉtude de l interopérabilité de deux langages de programmation basée sur la machine virtuelle de Java
Université Catholique de Louvain Faculté des Sciences Appliquées Département d Ingénierie Informatique Étude de l interopérabilité de deux langages de programmation basée sur la machine virtuelle de Java
Plus en détailSystèmes répartis. Fabrice Rossi http://apiacoa.org/contact.html. Université Paris-IX Dauphine. Systèmes répartis p.1/49
Systèmes répartis Fabrice Rossi http://apiacoa.org/contact.html. Université Paris-IX Dauphine Systèmes répartis p.1/49 Systèmes répartis Définition très large : un système réparti est système informatique
Plus en détailInstitut 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étailPour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère
L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la
Plus en détailProgrammation Par Objets
Programmation Par Objets Structures de données package java.util B. Carré Polytech Lille 1 Tableaux et structures de données Tableaux «Objets» taille fixe type des éléments : primitif (homogène) ou objets
Plus en détailGestion distribuée (par sockets) de banque en Java
Gestion distribuée (par sockets) de banque en Java Université Paris Sud Rappel sur la solution locale de gestion simple de banque L objet de cet exercice était de créer une application java qui implante
Plus en détailCorrigé des exercices sur les références
Corrigé des exercices sur les références Exercice 3.1.1 dessin Pour cet exercice, vous allez dessiner des structures de données au moyen de petits schémas analogues à ceux du cours, comportant la pile
Plus en détailWEBSERVICES. 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étailJava 1.5 : principales nouveautés
Cours 6 - TEP - UPMC - 2008/2009 p. 1/34 Java 1.5 : principales nouveautés classes paramétrées : generics encapsulation des valeurs de types primitifs : auto[un]boxing itération sur les boucles types énumérés
Plus en détailCours 1: Java et les objets
Ressources Les interface homme-machine et le langage Java DUT première année Henri Garreta, Faculté des Sciences (Luminy) Cyril Pain-Barre & Sébastien Nedjar, IUT d Aix-Marseille (Aix) Cours 1: infodoc.iut.univ-aix.fr/~ihm/
Plus en détailCORBA. (Common Request Broker Architecture)
CORBA (Common Request Broker Architecture) Projet MIAGe Toulouse Groupe 2 1 CORBA, introduction (1/4) Les systèmes répartis permettent de créer des applications basées sur des composants auto-gérables,
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailINITIATION AU LANGAGE JAVA
INITIATION AU LANGAGE JAVA I. Présentation 1.1 Historique : Au début des années 90, Sun travaillait sur un projet visant à concevoir des logiciels simples et performants exécutés dans des PDA (Personnal
Plus en détailOS Réseaux et Programmation Système - C5
OS Réseaux et Programmation Système - C5 Rabie Ben Atitallah rabie.benatitallah@univ-valenciennes.fr RPC - XDR Rappel RPC: Remote Procedure Call Besoin d un environnement de haut niveau pour le développement
Plus en détailCORBA haute performance
CORBA haute performance «CORBA à 730Mb/s!» Alexandre DENIS PARIS/IRISA, Rennes Alexandre.Denis@irisa.fr Plan Motivations : concept de grille de calcul CORBA : concepts fondamentaux Vers un ORB haute performance
Plus en détailPrésentation. Au programme. Fonctionnement. A l issue de ce module vous devriez...
Au programme Conception Orientée Objet Jean-Christophe Routier Licence mention Informatique Université Lille 1 Présentation L UE COO est le prolongement immédiat de l UE POO du S4 informatique. cf. http://portail.fil.univ-lille1.fr/portail/ls4/poo
Plus en détailTolérance aux Fautes des Grappes d Applications J2EE. Applications Internet dynamiques
Application statique Tolérance aux Fautes des Grappes d Applications J2EE Sara Bouchenak Sacha Krakowiak, Noël de Palma, Stéphane Fontaine Projet SARDES INRIA IMAG CFSE'4, 6-8 avril 2005 Tolérance aux
Plus en détailPROGRAMMATION PAR OBJETS
PROGRAMMATION PAR OBJETS Java Environnement et constructions spécifiques Walter Rudametkin Maître de Conférences Bureau F011 Walter.Rudametkin@polytech-lille.fr B. Carré Polytech Lille 2 Java (Sun 1995)
Plus en détailArchitectures n-tiers Intergiciels à objets et services web
Plan pour aujourd hui Architectures n-tiers Intergiciels à objets et services web Clémentine Nebut Nebut LIRMM / Université de Montpellier 2 Clementine.nebut@lirmm.fr Introduction Architectures classiques
Plus en détailClasseur de suivi de l auditeur. Architecture et Ingénierie des Systèmes et des Logiciels
Classeur de suivi de l auditeur Architecture et Ingénierie des Systèmes et des Logiciels 04/12/2012 2 Sommaire Introduction... 4 Objectifs... 4 Méthodologie... 4 Coordonnées... 5 Curriculum vitae de l
Plus en détailCréation d une application JEE
Création d une application JEE Rédacteurs : Alexandre Baillif, Philippe Lacomme, Raksmey Phan et Michaël PLAN Date : juillet 2010 Mise à jour : Michaël PLAN Date : octobre 2014 Avertissement : - ce document
Plus en détailIntroduction aux intergiciels
Introduction aux intergiciels M. Belguidoum Université Mentouri de Constantine Master2 Académique M. Belguidoum (UMC) Introduction aux intergiciels 1 / 39 Plan 1 Historique 2 Pourquoi l'intergiciel? 3
Plus en détailEnvironnements de développement (intégrés)
Environnements de développement (intégrés) Tests unitaires, outils de couverture de code Patrick Labatut labatut@di.ens.fr http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure
Plus en détailJOnAS Day 5.1. Clustering
JOnAS Day 5.1 Clustering Solution complète de clustering Répartition de charge & bascule sur échec Application Web avec mod_jk/mod_proxy Connecteur http pour md_proxy Application Ejb avec CMIv2 Réplication
Plus en détail1. Introduction à la distribution des traitements et des données
2A SI 1 - Introduction aux SI, et à la distribution des traitements et des données Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle Support de cours élaboré avec l aide de
Plus en détailF. Barthélemy. 17 mai 2005
Typage de la généricité en Java F. Barthélemy 17 mai 2005 1 Le shéma général La g én éricit é en Java est un ajout r éalis é sur un langage existant depuis d éjà une dizaine d ann ées, avec des contraintes
Plus en détailRAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION)
CLASSE RACINE Object ancêtre de toutes les classes RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION) définit donc des méthodes héritées par toutes
Plus en détailEncapsulation. L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets.
Encapsulation L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets. La visibilité dépend des membres : certains membres peuvent être visibles et d'autres
Plus en détailExceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;
CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe
Plus en détailVulgarisation Java EE Java EE, c est quoi?
Paris, le 1 Février 2012 Vulgarisation Java EE Java EE, c est quoi? Sommaire Qu est ce que Java? Types d applications Java Environnements Java Versions de Java Java EE, c est quoi finalement? Standards
Plus en détailTP1. Outils Java Eléments de correction
c sep. 2008, v2.1 Java TP1. Outils Java Eléments de correction Sébastien Jean Le but de ce TP, sur une séance, est de se familiariser avec les outils de développement et de documentation Java fournis par
Plus en détailJADE : Java Agent DEvelopment framework. Laboratoire IBISC & Départ. GEII Université & IUT d Evry nadia.abchiche@ibisc.univ-evry.
: Java Agent DEvelopment framework Laboratoire IBISC & Départ. GEII Université & IUT d Evry nadia.abchiche@ibisc.univ-evry.fr Introduction à la plateforme JADE 1) Modèle d agent 2) Services 3) Norme FIPA
Plus en détailInitiation à JAVA et à la programmation objet. raphael.bolze@ens-lyon.fr
Initiation à JAVA et à la programmation objet raphael.bolze@ens-lyon.fr O b j e c t i f s Découvrir un langage de programmation objet. Découvrir l'environnement java Découvrir les concepts de la programmation
Plus en détailHéritage presque multiple en Java (1/2)
Héritage presque multiple en Java (1/2) Utiliser deux classes ou plus dans la définition d'une nouvelle classe peut se faire par composition. class Etudiant{ int numero; Diplome d; float passeexamen(examen
Plus en détailProjet de programmation (IK3) : TP n 1 Correction
Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public
Plus en détailProgrammation client-serveur sockets - RPC
Master Informatique M Plan de la suite Programmation client-serveur sockets - RPC Sacha Krakowiak Université Joseph Fourier Projet Sardes (INRIA et IMAG-LSR) http://sardes.inrialpes.fr/people/krakowia
Plus en détailManuel d implémentation des Web Services Sous Axis1 et Axis2/Tomcat/linux. Par Pr Bouabid EL OUAHIDI
Université Mohammed-V Agdal Faculté Sciences Rabat Manuel d implémentation des Web Services Sous Axis1 et Axis2/Tomcat/linux Par Pr Bouabid EL OUAHIDI Email : ouahidi@fsr.ac.ma https://sites.google.com/site/bouabidouahidi/
Plus en détailArchitecture Orientée Service, JSON et API REST
UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API
Plus en détailImplementing a simple RMI Application over the Internet (using and comparing HTTP tunneling, RMI Proxy)
Implementing a simple RMI Application over the Internet (using and comparing HTTP tunneling, RMI Proxy) Abstract Un problème se pose lorsque l on veut effectuer des appels RMI à travers un firewall, car
Plus en détailLOG4430 : Architecture logicielle et conception avancée
LOG4430 : Architecture logicielle et conception avancée Yann-Gaël Guéhéneuc Cours 3 Bibliothèques et chargement Dynamique de composants Département de génie informatique et de génie logiciel École Polytechnique
Plus en détailChapitre I Notions de base et outils de travail
Chapitre I Notions de base et outils de travail Objectifs Connaître les principes fondateurs et l historique du langage Java S informer des principales caractéristiques du langage Java Connaître l environnement
Plus en détailJava c est quoi? Java. Java. Java : Principe de fonctionnement 31/01/2012. 1 - Vue générale 2 - Mon premier programme 3 - Types de Programme Java
1 - Vue générale 2 - Mon premier programme 3 - Types de Programme 1 2 c est quoi? Technologie développée par SUN Microsystems lancée en 1995 Dans un des premiers papiers* sur le langage JAVA, SUN le décrit
Plus en détailPage 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T>
Page 1 sur 5 TP3 Lectures préalables : l Java_II l tutorial Interfaces Thèmes du TP : l la classe Object l Vector l Stack Une pile d'objects Les éléments de la classe Pile sont maintenant des instances
Plus en détailTp 1 correction. Structures de données (IF2)
Tp 1 correction Structures de données (IF2) Remarque générale : compilez et exécutez le code au-fur-et-à mesure de son écriture. Il est plus facile de corriger une petite portion de code délimitée que
Plus en détailCréation d un service web avec NetBeans 5.5 et SJAS 9
Sommaire Création d un service web avec NetBeans 5.5 et SJAS 9 1. Présentation... 2 2. Création d un service web avec NetBeans... 2 2.1. Création d une application Web... 2 2.2. Création du service web...
Plus en détailExtension SSO Java. Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java.
Note technique W4 Engine Extension SSO Java Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java. 1 Présentation 3 2 Custom SSO Java 4 3 Bilan 10 Sommaire Référence
Plus en détailChapitre VI- La validation de la composition.
Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions
Plus en détailUne introduction à Java
Une introduction à Java IFT 287 (Semaine 1) UNIVERSITÉ DE SHERBROOKE 1 Java - Historique Développé par Sun Microsystems en 1994 Inventeur James Gosling (canadien!) Objectif langage sûr (fortement typé)
Plus en détailSystèmes d'informations historique et mutations
Systèmes d'informations historique et mutations Christophe Turbout SAIC-CERTIC Université de Caen Basse-Normandie Systèmes d'informations : Historique et mutations - Christophe Turbout SAIC-CERTIC UCBN
Plus en détailUn ordonnanceur stupide
Un ordonnanceur simple Université Paris Sud L objet des exercices qui suivent est de créer un ordonanceur implantant l algorithme du tourniquet ( round-robin scheduler ). La technique utilisée pour élire
Plus en détailJAVA. Introduction à la programmation objet avec java 1/4. Nadir BOUSSOUKAIA
JAVA Introduction à la programmation objet avec java 1/4 Nadir BOUSSOUKAIA v1.04 SOMMAIRE Caractéristiques de java (40mn) Eléments du langage (40mn) Les core API java (20mn) 2 Partie 1 Caractéristiques
Plus en détailChapitre 10. Les interfaces Comparable et Comparator 1
Chapitre 10: Les interfaces Comparable et Comparator 1/5 Chapitre 10 Les interfaces Comparable et Comparator 1 1 Ce chapitre a été extrait du document "Objets, Algorithmes, Patterns" de [René Lalement],
Plus en détailBases Java - Eclipse / Netbeans
Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement
Plus en détailÉtude et applications de l approche MDA pour des plates-formes de Services Web
UNIVERSITÉ DE NANTES ÉCOLE DOCTORALE SCIENCES ET TECHNOLOGIES DE L INFORMATION ET DES MATÉRIAUX Année : 2005 N o B.U. : Thèse de Doctorat de l Université de Nantes Spécialité : INFORMATIQUE Présentée et
Plus en détailLambda! 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étailCours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr
. Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le
Plus en détailPrésentation de Java. Olivier de Pertat IT GROUP
Présentation de Java Olivier de Pertat IT GROUP Qu'est-ce que Java? Un langage de programmation orienté objets Une architecture de Virtual Machine Un ensemble d'api variées Un ensemble d'outils : le Java
Plus en détailObjets et Programmation. origine des langages orientés-objet
Objets et Programmation origine des langages orientés-objet modularité, encapsulation objets, classes, messages exemples en Java héritage, liaison dynamique G. Falquet, Th. Estier CUI Université de Genève
Plus en détail