M2 FMIN305 - Novembre 2010 CORBA

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

Download "M2 FMIN305 - Novembre 2010 CORBA"

Transcription

1 FMIN05 - Novembre 0 Ce TD est très largement inspiré de ceux de Gilles Roussel. Vous trouverez beaucoup de choses intéressantes ici : roussel. 1 Horloge distante On souhaite mettre en place une horloge accessible à distance. L interface de l horloge a été définie en IDL et vous est donnée ci-dessous. 1 module tdhorloge { interface Horloge { readonly attribute string l o c a l i t e ; 4 string gettime ( ) ; 5 void sethours ( in short h ) ; 6 void setminutes ( in short m) ; 7 } ; 8 } ; 1.1 Implémentation de l horloge On veut implémenter l interface de l horloge en Java. On commence par compiler l interface avec idlc. Cela crée un répertoire tdhorloge, avec les fichiers qui vous sont donnés en fin de sujet. Question 1. Quelle est l interface Java qui est réellement à implémenter? Question. Dans tout ce qui est généré, quelle(s) méthode(s) est-il primordial de connaître? Question. Écrivez la classe HelloImpl.java, ou tout au moins une partie, sans les détails de calendrier grégorien. 1. Mise en place du serveur Question 4. On veut créer une horloge rendre l instance correspondante accessible à distance en écrivant dans un fichier sa référence pour que les clients puissent la localiser. Quelles sont les étapes à suivre pour la création d un tel serveur? 1. Mise en place d un client Question 5. On veut écrire un client qui affiche l heure obtenue par utilisation de l horloge distante. Quelles sont les étapes à mettre en place? Une application de forum On veut développer une application de forums. Un forum a un thème, et un modérateur (représentés sous forme de chaîne de caractères), fixés à la création du forum. Le forum permet d échager des messages. Un message a un titre, un auteur, une date (date auquel il a été posté) et un corps. Dans un forum, on peut poster des messages, récupérer un message à partir de son nom, supprimer un message à partir de son nom, et obtenir l ensemble des messages d un forum.

2 Le système lève des exceptions quand : on poste un message avec un nom déjà utilisé dans le forum, on essaie d enlever ou de récupérer un message inexistant. Question 6. Écrivez l IDL nécessaire à la définition de l application de forum. Question 7. Dans l implémentation du forum, sous quelle forme seront stockés les messages? Question 8. Écrire le code des méthodes pour poster, enlever, ou récupérer un message. Question 9. On veut ajouter à l interface du forum la méthode suivante (en IDL) : 1 void g e t I n f o ( out string theme, out string moderator, out long s i z e ) ; Comment l implémenter en Java et comment un client pourra t-elle l utiliser? Listing 1 HorlogeHelper.java 5 tdhorloge / HorlogeHelper. java. 6 Generated by the IDL to Java compiler ( p o r t a b l e ), v e r s i o n. 8 l u n d i 19 o c t o b r e h CEST 11 a b s t r a c t p u b l i c c l a s s HorlogeHelper 1 { 1 p r i v a t e s t a t i c S t r i n g i d = IDL : tdhorloge / Horloge : 1. 0 ; p u b l i c s t a t i c void i n s e r t ( org. omg.. Any a, tdhorloge. Horloge that ) 16 { 17 org. omg.. p o r t a b l e. OutputStream out = a. c r e a t e o u t p u t s t r e a m ( ) ; 18 a. type ( type ( ) ) ; 19 w r i t e ( out, that ) ; 0 a. r e a d v a l u e ( out. c r e a t e i n p u t s t r e a m ( ), type ( ) ) ; 1 } p u b l i c s t a t i c tdhorloge. Horloge e x t r a c t ( org. omg.. Any a ) 4 { 5 return read ( a. c r e a t e i n p u t s t r e a m ( ) ) ; 6 } 7 8 p r i v a t e s t a t i c org. omg.. TypeCode typecode = n u l l ; 9 synchronized p u b l i c s t a t i c org. omg.. TypeCode type ( ) 0 { 1 i f ( typecode == n u l l ) { typecode = org. omg..orb. i n i t ( ). c r e a t e i n t e r f a c e t c ( tdhorloge. HorlogeHelper. id ( ), Horloge ) ; 4 } 5 return typecode ; 6 } 7 8 p u b l i c s t a t i c S t r i n g id ( ) 9 { 40 return i d ; 41 } 4 TD FMIN05 Novembre 0

3 4 p u b l i c s t a t i c tdhorloge. Horloge read ( org. omg.. p o r t a b l e. InputStream istream ) 44 { 45 return narrow ( istream. read Object ( HorlogeStub. c l a s s ) ) ; 46 } p u b l i c s t a t i c void w r i t e ( org. omg.. p o r t a b l e. OutputStream ostream, tdhorloge. Horloge value ) 49 { 50 ostream. w r i t e O b j e c t ( ( org. omg.. Object ) value ) ; 51 } 5 5 p u b l i c s t a t i c tdhorloge. Horloge narrow ( org. omg.. Object obj ) 54 { 55 i f ( obj == n u l l ) 56 return n u l l ; 57 e l s e i f ( obj i n s t a n c e o f tdhorloge. Horloge ) 58 return ( tdhorloge. Horloge ) obj ; 59 e l s e i f (! obj. i s a ( id ( ) ) ) 60 throw new org. omg..bad PARAM ( ) ; 61 e l s e 6 { 6 org. omg.. p o r t a b l e. Delegate d e l e g a t e = ( ( org. omg.. p o r t a b l e. ObjectImpl ) obj ). g e t d e l e g a t e ( ) ; 64 tdhorloge. HorlogeStub stub = new tdhorloge. HorlogeStub ( ) ; 65 stub. s e t d e l e g a t e ( d e l e g a t e ) ; 66 return stub ; 67 } 68 } p u b l i c s t a t i c tdhorloge. Horloge unchecked narrow ( org. omg.. Object obj ) 71 { 7 i f ( obj == n u l l ) 7 return n u l l ; 74 e l s e i f ( obj i n s t a n c e o f tdhorloge. Horloge ) 75 return ( tdhorloge. Horloge ) obj ; 76 e l s e 77 { 78 org. omg.. p o r t a b l e. Delegate d e l e g a t e = ( ( org. omg.. p o r t a b l e. ObjectImpl ) obj ). g e t d e l e g a t e ( ) ; 79 tdhorloge. HorlogeStub stub = new tdhorloge. HorlogeStub ( ) ; 80 stub. s e t d e l e g a t e ( d e l e g a t e ) ; 81 return stub ; 8 } 8 } } / Listing HorlogeHolder.java 4 tdhorloge / HorlogeHolder. java. 5 Generated by the IDL to Java compiler ( p o r t a b l e ), v e r s i o n. 6 from h o r l o g e. i d l 7 l u n d i 19 o c t o b r e h CEST 8 / 9 p u b l i c f i n a l c l a s s HorlogeHolder implements org. omg.. p o r t a b l e. Streamable 11 { TD FMIN05 Novembre 0

4 1 p u b l i c tdhorloge. Horloge value = n u l l ; 1 14 p u b l i c HorlogeHolder ( ) 15 { 16 } p u b l i c HorlogeHolder ( tdhorloge. Horloge i n i t i a l V a l u e ) 19 { 0 value = i n i t i a l V a l u e ; 1 } p u b l i c void r ead ( org. omg.. p o r t a b l e. InputStream i ) 4 { 5 value = tdhorloge. HorlogeHelper. read ( i ) ; 6 } 7 8 p u b l i c void w r i t e ( org. omg.. p o r t a b l e. OutputStream o ) 9 { 0 tdhorloge. HorlogeHelper. w r i t e ( o, value ) ; 1 } p u b l i c org. omg.. TypeCode type ( ) 4 { 5 return tdhorloge. HorlogeHelper. type ( ) ; 6 } 7 8 } 5 tdhorloge / Horloge. java. Listing Horloge.java 6 Generated by the IDL to Java compiler ( p o r t a b l e ), v e r s i o n. 8 l u n d i 19 o c t o b r e h CEST 11 p u b l i c interface Horloge extends HorlogeOperations, org. omg.. Object, org. omg.. p o r t a b l e. IDLEntity 1 { 1 } // i n t e r f a c e Horloge Listing 4 HorlogeOperations.java 5 tdhorloge / HorlogeOperations. java. 6 Generated by the IDL to Java compiler ( p o r t a b l e ), v e r s i o n. 8 l u n d i 19 o c t o b r e h CEST 11 p u b l i c interface HorlogeOperations 1 { 1 S t r i n g l o c a l i t e ( ) ; TD FMIN05 4 Novembre 0

5 14 S t r i n g gettime ( ) ; 15 void sethours ( short h ) ; 16 void setminutes ( short m) ; 17 } // i n t e r f a c e HorlogeOperations 5 tdhorloge /HorlogePOA. java. Listing 5 HorlogePOA.java 6 Generated by the IDL to Java compiler ( p o r t a b l e ), v e r s i o n. 8 l u n d i 19 o c t o b r e h CEST 11 p u b l i c a b s t r a c t c l a s s HorlogePOA extends org. omg. P o r t a b l e S e r v e r. Servant 1 implements tdhorloge. HorlogeOperations, org. omg.. p o r t a b l e. InvokeHandler 1 { // Constructors p r i v a t e s t a t i c java. u t i l. Hashtable methods = new java. u t i l. Hashtable ( ) ; 18 s t a t i c 19 { 0 methods. put ( g e t l o c a l i t e, new java. lang. I n t e g e r ( 0 ) ) ; 1 methods. put ( gettime, new java. lang. I n t e g e r ( 1 ) ) ; methods. put ( sethours, new java. lang. I n t e g e r ( ) ) ; methods. put ( setminutes, new java. lang. I n t e g e r ( ) ) ; 4 } 5 6 p u b l i c org. omg.. p o r t a b l e. OutputStream i n voke ( S t r i n g $method, 7 org. omg.. p o r t a b l e. InputStream in, 8 org. omg.. p o r t a b l e. ResponseHandler $rh ) 9 { 0 org. omg.. p o r t a b l e. OutputStream out = n u l l ; 1 java. lang. I n t e g e r method = ( java. lang. I n t e g e r ) methods. get ( $method ) ; i f ( method == n u l l ) throw new org. omg..bad OPERATION ( 0, org. omg.. CompletionStatus. COMPLETED MAYBE) ; 4 5 switch ( method. intvalue ( ) ) 6 { 7 case 0 : // tdhorloge / Horloge / g e t l o c a l i t e 8 { 9 S t r i n g $ r e s u l t = n u l l ; 40 $ r e s u l t = t h i s. l o c a l i t e ( ) ; 41 out = $rh. createreply ( ) ; 4 out. w r i t e s t r i n g ( $ r e s u l t ) ; 4 break ; 44 } case 1 : // tdhorloge / Horloge / gettime 47 { 48 S t r i n g $ r e s u l t = n u l l ; 49 $ r e s u l t = t h i s. gettime ( ) ; 50 out = $rh. createreply ( ) ; 51 out. w r i t e s t r i n g ( $ r e s u l t ) ; 5 break ; 5 } TD FMIN05 5 Novembre 0

6 54 55 case : // tdhorloge / Horloge / sethours 56 { 57 short h = in. r e a d s h o r t ( ) ; 58 t h i s. sethours ( h ) ; 59 out = $rh. createreply ( ) ; 60 break ; 61 } 6 6 case : // tdhorloge / Horloge / setminutes 64 { 65 short m = in. r e a d s h o r t ( ) ; 66 t h i s. setminutes (m) ; 67 out = $rh. createreply ( ) ; 68 break ; 69 } default : 7 throw new org. omg..bad OPERATION ( 0, org. omg.. CompletionStatus.COMPLETED MAYBE) ; 7 } return out ; 76 } // i n v o k e // Type s p e c i f i c : : Object o p e r a t i o n s 79 p r i v a t e s t a t i c S t r i n g [ ] i d s = { 80 IDL : tdhorloge / Horloge : 1. 0 } ; 81 8 p u b l i c S t r i n g [ ] a l l i n t e r f a c e s ( org. omg. P o r t a b l e S e r v e r.poa poa, byte [ ] o b j e c t I d ) 8 { 84 return ( S t r i n g [ ] ) i d s. c l o n e ( ) ; 85 } p u b l i c Horloge t h i s ( ) 88 { 89 return HorlogeHelper. narrow ( 90 super. t h i s o b j e c t ( ) ) ; 91 } 9 9 p u b l i c Horloge t h i s ( org. omg..orb orb ) 94 { 95 return HorlogeHelper. narrow ( 96 super. t h i s o b j e c t ( orb ) ) ; 97 } } // c l a s s HorlogePOA Listing 6 HorlogeStub.java 5 tdhorloge / HorlogeStub. java. 6 Generated by the IDL to Java compiler ( p o r t a b l e ), v e r s i o n. 8 l u n d i 19 o c t o b r e h CEST TD FMIN05 6 Novembre 0

7 11 p u b l i c c l a s s HorlogeStub extends org. omg.. p o r t a b l e. ObjectImpl implements tdhorloge. Horloge 1 { 1 14 p u b l i c S t r i n g l o c a l i t e ( ) 15 { 16 org. omg.. p o r t a b l e. InputStream $in = n u l l ; 17 try { 18 org. omg.. p o r t a b l e. OutputStream $out = r e q u e s t ( g e t l o c a l i t e, true ) ; 19 $in = i n v o k e ( $out ) ; 0 S t r i n g $ r e s u l t = $in. r e a d s t r i n g ( ) ; 1 r eturn $ r e s u l t ; } catch ( org. omg.. p o r t a b l e. ApplicationException $ex ) { $in = $ex. getinputstream ( ) ; 4 S t r i n g i d = $ex. getid ( ) ; 5 throw new org. omg..marshal ( i d ) ; 6 } catch ( org. omg.. p o r t a b l e. RemarshalException $rm) { 7 r eturn l o c a l i t e ( ) ; 8 } f i n a l l y { 9 r e l e a s e R e p l y ( $in ) ; 0 } 1 } // l o c a l i t e p u b l i c S t r i n g gettime ( ) 4 { 5 org. omg.. p o r t a b l e. InputStream $in = n u l l ; 6 try { 7 org. omg.. p o r t a b l e. OutputStream $out = r e q u e s t ( gettime, true ) ; 8 $in = i n v o k e ( $out ) ; 9 S t r i n g $ r e s u l t = $in. r e a d s t r i n g ( ) ; 40 r eturn $ r e s u l t ; 41 } catch ( org. omg.. p o r t a b l e. ApplicationException $ex ) { 4 $in = $ex. getinputstream ( ) ; 4 S t r i n g i d = $ex. getid ( ) ; 44 throw new org. omg..marshal ( i d ) ; 45 } catch ( org. omg.. p o r t a b l e. RemarshalException $rm) { 46 r eturn gettime ( ) ; 47 } f i n a l l y { 48 r e l e a s e R e p l y ( $in ) ; 49 } 50 } // gettime 51 5 p u b l i c void sethours ( short h ) 5 { 54 org. omg.. p o r t a b l e. InputStream $in = n u l l ; 55 try { 56 org. omg.. p o r t a b l e. OutputStream $out = r e q u e s t ( sethours, true ) ; 57 $out. w r i t e s h o r t ( h ) ; 58 $in = i n v o k e ( $out ) ; 59 r eturn ; 60 } catch ( org. omg.. p o r t a b l e. ApplicationException $ex ) { 61 $in = $ex. getinputstream ( ) ; 6 S t r i n g i d = $ex. getid ( ) ; 6 throw new org. omg..marshal ( i d ) ; 64 } catch ( org. omg.. p o r t a b l e. RemarshalException $rm) { 65 sethours ( h ) ; 66 } f i n a l l y { TD FMIN05 7 Novembre 0

8 67 r e l e a s e R e p l y ( $in ) ; 68 } 69 } // sethours p u b l i c void setminutes ( short m) 7 { 7 org. omg.. p o r t a b l e. InputStream $in = n u l l ; 74 try { 75 org. omg.. p o r t a b l e. OutputStream $out = r e q u e s t ( setminutes, true ) ; 76 $out. w r i t e s h o r t (m) ; 77 $in = i n v o k e ( $out ) ; 78 r eturn ; 79 } catch ( org. omg.. p o r t a b l e. ApplicationException $ex ) { 80 $in = $ex. getinputstream ( ) ; 81 S t r i n g i d = $ex. getid ( ) ; 8 throw new org. omg..marshal ( i d ) ; 8 } catch ( org. omg.. p o r t a b l e. RemarshalException $rm) { 84 setminutes (m ) ; 85 } f i n a l l y { 86 r e l e a s e R e p l y ( $in ) ; 87 } 88 } // setminutes // Type s p e c i f i c : : Object o p e r a t i o n s 91 p r i v a t e s t a t i c S t r i n g [ ] i d s = { 9 IDL : tdhorloge / Horloge : 1. 0 } ; 9 94 p u b l i c S t r i n g [ ] i d s ( ) 95 { 96 return ( S t r i n g [ ] ) i d s. c l o n e ( ) ; 97 } p r i v a t e void readobject ( java. i o. ObjectInputStream s ) throws java. i o. IOException 0 { 1 S t r i n g s t r = s. readutf ( ) ; S t r i n g [ ] args = n u l l ; java. u t i l. P r o p e r t i e s props = n u l l ; 4 org. omg.. Object obj = org. omg..orb. i n i t ( args, props ). s t r i n g t o o b j e c t ( s t r ) ; 5 org. omg.. p o r t a b l e. Delegate d e l e g a t e = ( ( org. omg.. p o r t a b l e. ObjectImpl ) obj ). g e t d e l e g a t e ( ) ; 6 s e t d e l e g a t e ( d e l e g a t e ) ; 7 } 8 9 p r i v a t e void writeobject ( java. i o. ObjectOutputStream s ) throws java. i o. IOException 1 { 111 S t r i n g [ ] args = n u l l ; 11 java. u t i l. P r o p e r t i e s props = n u l l ; 11 S t r i n g s t r = org. omg..orb. i n i t ( args, props ). o b j e c t t o s t r i n g ( t h i s ) ; 114 s. writeutf ( s t r ) ; 115 } 116 } // c l a s s HorlogeStub TD FMIN05 8 Novembre 0

Données et communications en Java

Données et communications en Java Données et communications en Java Programmation des applications réparties Olivier Flauzac Master EEAMI-Informatique première année Olivier Flauzac (URCA) Données et communications en Java EEAMI-INFO 1

Plus en détail

CORBA avec OpenORB. Samir Torki et Patrice Torguet

CORBA avec OpenORB. Samir Torki et Patrice Torguet CORBA avec OpenORB Samir Torki et Patrice Torguet 1 Présentation de CORBA CORBA (Common Object Request Broker Architecture) est un standard décrivant une architecture pour la mise en place d objets distribués.

Plus en détail

Programmation - Java - Fiches du Langage. Marie Beurton-Aimar

Programmation - Java - Fiches du Langage. Marie Beurton-Aimar Programmation - Java - Fiches du Langage Marie Beurton-Aimar Fiche Numéro 1 1.1 Structure d un programme Java Toutes les instructions se terminent par un ; Le nom du fichier qui contient une classe doit

Plus en détail

RMI : Remote Method Invocation Appel de méthodes à distance TD/TP

RMI : Remote Method Invocation Appel de méthodes à distance TD/TP RMI : Remote Method Invocation Appel de méthodes à distance TD/TP Patrice Torguet torguet@irit.fr Université Paul Sabatier But l But du TD/TP : application répartie permettant de gérer des comptes bancaires.

Plus en détail

Examen terminal Architectures n-tiers : Intergiciels à objets et services web

Examen terminal Architectures n-tiers : Intergiciels à objets et services web GMIN20 - Juin 2013 Tous documents autorisés. Le barème est donné à titre indicatif. 1 Corba (5 points) Un fichier IDL vous est donné au listing 1. On vous donne aussi un fichier d implémentation au listing

Plus en détail

JVM. RMI - couche de référence. RMI - couche de transport TCP/IP

JVM. RMI - couche de référence. RMI - couche de transport TCP/IP Chapitre 9 Dans ce chapitre nous abordons le mécanisme RMI (Remote Method Invocation) permettant le développe ment des systèmes répartis. Nous expliquerons comment les classes d un serveur peuvent être

Plus en détail

Sérialisation sur le système de fichiers. Gestion des exceptions en Java.

Sérialisation sur le système de fichiers. Gestion des exceptions en Java. Sérialisation sur le système de fichiers. Gestion des exceptions en Java. Christophe Gravier, Frédérique Laforest, Julien Subercaze Télécom Saint-Étienne Université Jean Monnet {pnom.nom}@univ-st-etienne.fr

Plus en détail

CORBA. Cycle de développement

CORBA. Cycle de développement CORBA Cycle de développement Projet MIAGe Toulouse Groupe 2 1 Le cycle de développement (1/3) On s intéresse au développement selon le mode statique, c est à dire en utilisant les talons (stub, skeleton,

Plus en détail

Le réseau est l ordinateur

Le réseau est l ordinateur Le réseau est l ordinateur (Bill Joy) Les applets 1 Les applets : principe Les applets sont des programme Java téléchargés à partir d un serveur WEB et qui s exécutent dans le browser d un client : Fichier.html

Plus en détail

Java Remote Method Invocation

Java Remote Method Invocation Java Remote Method Invocation Ce support est très largement inspiré du livre et du cours de S. Krakowiak S. Krakowiak Java Remote Method Invocation 1 / 25 Intérêt des objets pour la construction d applications

Plus en détail

Année 2011-2012 Master 2 T.P. 1. Sockets

Année 2011-2012 Master 2 T.P. 1. Sockets Institut Galilée E-services Année 2011-2012 Master 2 T.P. 1 Sockets L objectif de ce TP est de compléter vos connaissances sur la manipulation de sockets en reprenant certains des exercices expliqués en

Plus en détail

objectif : plan : Java, CORBA et RMI A. Le Grand,1997 1 JAVA, CORBA et RMI

objectif : plan : Java, CORBA et RMI A. Le Grand,1997 1 JAVA, CORBA et RMI JAVA, CORBA et RMI objectif : développer des applications client/serveur incluant des objets répartis Java / CORBA : client/serveur hétérogènes Java / RMI : client/serveur homogènes plan : l architecture

Plus en détail

[APPLICATON REPARTIE DE VENTE AUX ENCHERES]

[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étail

CEG3585/CEG3555 Tutorat 2. Été 2015

CEG3585/CEG3555 Tutorat 2. Été 2015 CEG3585/CEG3555 Tutorat 2 Été 2015 Architecture TCP/IP Les applications sont développées avec le socket API (en Java les classes Socket et ServerSocket) Adresse socket: Port TCP Adresse IP Les deux adresses

Plus en détail

LES FICHIERS. 1-169169 JAVA Christine BONNET

LES FICHIERS. 1-169169 JAVA Christine BONNET 12 LES FICHIERS 1-169169 JAVA Christine BONNET LES FLOTS Package java.io La gestion des E/S s'effectue à l'aide des flots. Un stream (flot) représente un canal de communication ( écran, fichier, pipe,

Plus en détail

NFA032 Programmation objet avec Java

NFA032 Programmation objet avec Java NFA032 Programmation objet avec Java CNAM-Paris-Île-de-France Première session 2013 (sujet bis) Documents et calculatrice interdits. Le barème est donné à titre indicatif. Exercice 1 : programmation objet

Plus en détail

Objets distribués et Appel de Méthodes à Distance 2009-2010

Objets distribués et Appel de Méthodes à Distance 2009-2010 Objets distribués et Appel de Méthodes à Distance 2009-2010 1 Objectif : construire une application où différents modules peuvent être situés sur des machines différentes, en utilisant un modèle à objets

Plus en détail

Université Mohammed Premier Année universitaire 2012-2013

Université Mohammed Premier Année universitaire 2012-2013 Université Mohammed Premier Année universitaire 2012-2013 Faculté des Sciences Filière SMI Département de Mathématiques Module : POO Java et d Informatique Semestre : S5 Responsable du cours : El Mostafa

Plus en détail

RMI. 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. 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étail

Remote Method Invocation (RMI)

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étail

Corrigé des exercices sur les références

Corrigé 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é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

Exceptions. Fiabilité d un logiciel. Fiabilité en Java. Erreurs/exceptions. Localisation du traitement des erreurs/exceptions.

Exceptions. Fiabilité d un logiciel. Fiabilité en Java. Erreurs/exceptions. Localisation du traitement des erreurs/exceptions. Fiabilité d un logiciel Exceptions Université Française d Egypte Version O 5.7 5/10/15 Richard Grin Robustesse : fonctionne correctement, même en présence d événements exceptionnels Correction : donne

Plus en détail

Programmer avec les exceptions en Java

Programmer avec les exceptions en Java Programmer avec les exceptions en Java Premier Cycle Cours Eurinsa 2002 (c) P.Pollet 05/12/2002 Java 2001 (PP) 1 Plan Gestion traditionnelle des erreurs d exécution Qu est-ce qu une exception? La classe

Plus en détail

Programmation Socket en Java

Programmation Socket en Java Programmation Socket en Java Cours sockets Université Paul Sabatier Plan Un bon réflexe Les adresses IP en Java Sockets en mode flot La classe Socket La classe ServerSocket Communication via les Sockets

Plus en détail

Programmation par RPC et Java-RMI :

Programmation par RPC et Java-RMI : 2A-SI 3 Prog. réseau et systèmes distribués 3.2 et JavaRMI Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle Support de cours élaboré avec l aide de l équipe pédagogique du

Plus en détail

CSC4002 : Contrôle Final Session 1. Date : jeudi 26 janvier 2012 Durée : 1H30. Coordonnateurs : Christian Bac et Denis Conan

CSC4002 : Contrôle Final Session 1. Date : jeudi 26 janvier 2012 Durée : 1H30. Coordonnateurs : Christian Bac et Denis Conan Corrigé et Barème Contrôle de connaissances 2011/2012 des étudiants de 2 è année (EI2) CSC4002 : Contrôle Final Session 1 Date : jeudi 26 janvier 2012 Durée : 1H30 Coordonnateurs : Christian Bac et Denis

Plus en détail

Modèle client-serveur

Modèle client-serveur Modèle client-serveur Daniel Hagimont IRIT/ENSEEIHT 2 rue Charles Camichel - BP 7122 31071 TOULOUSE CEDEX 7 Daniel.Hagimont@enseeiht.fr http://hagimont.perso.enseeiht.fr 1 Plan Principes généraux Modèle

Plus en détail

1 ère PARTIE : COURS (sans document) Durée: 1h15

1 ère PARTIE : COURS (sans document) Durée: 1h15 Examen 1 ère session 2012-2013 page 1 NFA 032 - Programmation JAVA IPST-CNAM Programmation JAVA NFA 032 Mercredi 25 Juin 2014 Avec document Durée : 2 h30 Enseignant : LAFORGUE Jacques 1 ère Session NFA

Plus en détail

Le Langage Java et le Monde des Objets

Le Langage Java et le Monde des Objets . p.1 Le Langage Java et le Monde des Objets Les principes de la modélisation Orientée Objet. Qu est-ce qu une classe?. Les types de base. Utiliser les classes. Les tentacules de Java. . p.2 Bibliographie

Plus en détail

Java RMI. Programmation des applications réparties. Olivier Flauzac URCA. Master EEAMI-Informatique première année

Java RMI. Programmation des applications réparties. Olivier Flauzac URCA. Master EEAMI-Informatique première année Java RMI Programmation des applications réparties Olivier Flauzac URCA Master EEAMI-Informatique première année Olivier Flauzac (URCA) PAR : Java RMI MSTIC-INFO 1 1 / 30 1 RMI 2 Architecture 3 Développement

Plus en détail

Remote Method Invocation en Java (RMI)

Remote Method Invocation en Java (RMI) 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

Plus en détail

Programmer 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) 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étail

POO LES EXCEPTIONS LES EXCEPTIONS

POO LES EXCEPTIONS LES EXCEPTIONS CHAPITRE 7 : LES EXCEPTIONS Objectifs spécifiques 1. Introduire la notion d exception, les règles d utilisation et de définition des exceptions. 2. Distinguer entre les exceptions prédéfinies et les exceptions

Plus en détail

Chapitre 7. Exceptions

Chapitre 7. Exceptions Chapitre 7 Exceptions 1 Exceptions en Java Séparation exécution normale/gestion des erreurs Inspiration : C++ et Ada Un composant peut : prendre en charge le problème signaler le problème en levant une

Plus en détail

La Gestion des Exceptions

La Gestion des Exceptions La Gestion des Exceptions Les exceptions Les exceptions représentent le mécanisme de gestion des erreurs intégré au langage Java. Il se compose d'objets représentant les erreurs et d'un ensemble de troismotsclésquipermettentdedétecteretdetraiterceserreurs(try,

Plus en détail

Développement Logiciel

Développement Logiciel Développement Logiciel Éxamen session 1-2012-2013 (Vendedi 25 mai, 9h-11h) Seuls les documents liés directement au cours sont autorisés (comme dit sur le site) : sujets de TD, notes de cours, notes personnelles

Plus en détail

Sockets. Karima Boudaoud IUT- R&T

Sockets. Karima Boudaoud IUT- R&T Sockets Karima Boudaoud IUT- R&T Rappels sur les sockets Qu est ce qu un socket? Point d entrée entre 2 appli. du réseau Permet l échange de donnée entre elles à l aide des mécanismes d E/S (java.io) Différents

Plus en détail

Chapitre 5 CORBA (Common Object Request Broker Architecture)

Chapitre 5 CORBA (Common Object Request Broker Architecture) DÉVELOPPEMENT D APPLICATIONS RÉPARTIES CORBA (Common Object Request Broker Architecture) Amen Ben Hadj Ali amenbha@hotmail.com ISI-L3SIL 2011-2012 Plan 2 Architecture CORBA Le langage IDL CORBA en Java

Plus en détail

Auto-évaluation Programmation en Java

Auto-é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étail

Université Mohammed Premier Année universitaire 2011-2012. Correction de l examen écrit de la session ordinaire 18 Février 2012

Université Mohammed Premier Année universitaire 2011-2012. Correction de l examen écrit de la session ordinaire 18 Février 2012 Université Mohammed Premier Année universitaire 2011-2012 Faculté des Sciences Filière SMI Département de Mathématiques Module : POO Java et d Informatique Semestre : S5 Correction de l examen écrit de

Plus en détail

Les fichiers. Programmation Mobile Android Master CCI. Créer un fichier dans le stockage interne. Écrire et lire des données dans un fichier

Les fichiers. Programmation Mobile Android Master CCI. Créer un fichier dans le stockage interne. Écrire et lire des données dans un fichier Programmation Mobile Android Master CCI Bertrand Estellon Aix-Marseille Université March 23, 2015 Bertrand Estellon (AMU) Android Master CCI March 23, 2015 1 / 266 Les fichiers Deux espaces de stockage

Plus en détail

Université Mohammed Premier Année universitaire 2011-2012. Complément d exercices avec correction

Université Mohammed Premier Année universitaire 2011-2012. Complément d exercices avec correction Université Mohammed Premier Année universitaire 2011-2012 Faculté des Sciences Filière SMI Département de Mathématiques et d Informatique Module : POO Java Semestre : S5 Complément d exercices avec correction

Plus en détail

Solutions du chapitre 14

Solutions du chapitre 14 Solutions du chapitre 14 Traitement des exceptions 14.16 Sous quelles circonstances utiliseriez-vous l instruction suivante? catch ( Exception e ) { throw e; } Cette instruction sert à capturer toute exception

Plus en détail

Applet pour visualiser les variables «automate» notifiées

Applet pour visualiser les variables «automate» notifiées Applet pour visualiser les variables «automate» notifiées Sommaire 1. Introduction...2 2. Lecture de variables «automate» notifiées...2 2.1. IHM servant au test :...2 2.2. Codage de l'applet :...2 3. Codage

Plus en détail

Programmation Par Objets

Programmation 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étail

ORB. Plan. Corba. Introduction. Plan CORBA. Objet annuaire. Objet serveur BD. Master Informatique 2ème année. Olivier Flauzac 3 Architecture de CORBA

ORB. Plan. Corba. Introduction. Plan CORBA. Objet annuaire. Objet serveur BD. Master Informatique 2ème année. Olivier Flauzac 3 Architecture de CORBA Plan Corba Master Informatique 2ème année 1 Généralités 2 Le modèle OMA Olivier Flauzac 3 Architecture de CORBA 4 Le langage IDL olivier.flauzac@univ-reims.fr 5 Développement avec Corba Corba et BOA Corba

Plus en détail

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

Exceptions. 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étail

TP 7 Client REST Java - OAuth

TP 7 Client REST Java - OAuth TP 7 Client REST Java - OAuth Xavier de Rochefort xderoche@labri.fr - labri.fr/~xderoche 15 mai 2014 Résumé Dans le TP5 nous avons comment effectué des requêtes à un service tiers et comment permettre

Plus en détail

Arbres binaires. Illustration avec des arbres binaires de décision Généricité bornée Synthèse sur les assertions et les exceptions

Arbres binaires. Illustration avec des arbres binaires de décision Généricité bornée Synthèse sur les assertions et les exceptions Arbres binaires Illustration avec des arbres binaires de décision Généricité bornée Synthèse sur les assertions et les exceptions FMIN220 Structures de données Université de Montpellier 2015 FMIN220 (UM)

Plus en détail

TD : Compilation d exercices et d extraits d examens

TD : Compilation d exercices et d extraits d examens TD : Compilation d exercices et d extraits d examens 1. Classes et visibilité a. Parmi les appels suivant indiquez ceux qui sont corrects et ceux qui ne le sont pas public class A { public int i ; private

Plus en détail

Les entrées/sorties Java (sérialisation, accès aux chiers et connexion réseau)

Les entrées/sorties Java (sérialisation, accès aux chiers et connexion réseau) Année 2008-2009 Les entrées/sorties Java (sérialisation, accès aux chiers et connexion réseau) Nicolas Baudru mél : nicolas.baudru@esil.univmed.fr page web : nicolas.baudru.perso.esil.univmed.fr 1 Introduction

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

Les exceptions en Java

Les exceptions en Java Chapitre 6 Les exceptions en Java Lorsqu on conçoit un programme, on essaie évidemment qu il soit correct, c est-à-dire qu il fonctionne parfaitement dans les conditions prévues de son utilisation. L utilisateur

Plus en détail

Modèle client-serveur

Modèle client-serveur Modèle client-serveur Daniel Hagimont IRIT/ENSEEIHT 2 rue Charles Camichel - BP 7122 31071 TOULOUSE CEDEX 7 Daniel.Hagimont@enseeiht.fr http://hagimont.perso.enseeiht.fr Remerciements Michel Riveill 1

Plus en détail

Flux de données Lecture/Ecriture Fichiers

Flux de données Lecture/Ecriture Fichiers Flux de données Lecture/Ecriture Fichiers 1 Un flux de données est un objet qui représente une suite d octets d un programme pour une certaine destination ou issus d une source pour un programme flux d

Plus en détail

as Architecture des Systèmes d Information

as Architecture des Systèmes d Information Présentation Flux octet Flux caractère Sérialisation Présentation Flux octet Flux caractère Sérialisation Programmation - Gestion des entrées / sorties - Nicolas Malandain March 30, 2011 as Architecture

Plus en détail

file:///d:/wd/ens/in413/0708/les_tp/tp6_reseau/index.html TP6 Thèmes du TP : Serveurs de type "sessions"

file:///d:/wd/ens/in413/0708/les_tp/tp6_reseau/index.html TP6 Thèmes du TP : Serveurs de type sessions 1 sur 8 12/10/2007 15:50 TP6 Thèmes du TP : Serveurs de type "sessions" Architecture web et déploiement : une introduction httpunit : première utilisation Préambule : Les classes de tests unitaires présentes

Plus en détail

Le mécanisme d exception du langage Java

Le mécanisme d exception du langage Java Le mécanisme d exception du langage Java 1 / 39 Plan 1 Introduction aux exceptions en Java 2 Exemples de code avec gestion des exceptions 3 Créer ses propres exceptions 4 Instruction try/catch/finally

Plus en détail

Java - TP3. Nicolas Baudru, Carine Guivier-Curien, Laurent Vallet. Année 2008-2009

Java - TP3. Nicolas Baudru, Carine Guivier-Curien, Laurent Vallet. Année 2008-2009 Java - TP3 Nicolas Baudru, Carine Guivier-Curien, Laurent Vallet Année 2008-2009 Le but de ce TD est d'écrire une application client/serveur de type msn : 1. Des clients se connectent à un serveur 2. Un

Plus en détail

Université Paris Diderot ISIFAR Année 2008-2009. Exceptions et Classes Abstraites

Université Paris Diderot ISIFAR Année 2008-2009. Exceptions et Classes Abstraites Université Paris Diderot JAVA ISIFAR Année 2008-2009 TP n 7 - Correction Exceptions et Classes Abstraites Exercice 1 [Utilisation des Exceptions] La méthode parseint est spécifiée ainsi : public static

Plus en détail

Les exceptions en java

Les exceptions en java 1/12 Les exceptions en java 2/12 C'est quoi une exception? Une exception est un événement (une erreur) qui se produit lors de l'exécution d'un programme, et qui va provoquer un fonctionnement anormal (par

Plus en détail

Introduction au Java Development Kit Et quelques instructions en Java. 1 Création des répertoires d accueil des programmes Java

Introduction au Java Development Kit Et quelques instructions en Java. 1 Création des répertoires d accueil des programmes Java HLIN406 - Janvier 2015 Le Java Development Kit offre un ensemble d outils de développement d applications Java. Pour utiliser ces outils, JDK ne propose pas d interface utilisateur, on doit donc écrire

Plus en détail

Listes de personnes et calculatrice polonaise inverse en Java

Listes de personnes et calculatrice polonaise inverse en Java Listes de personnes et calculatrice polonaise inverse en Java Université Paris Sud Motivation Le but de cet exercice est de manipuler les listes chaînées et les piles et de voir leur application en analyse

Plus en détail

Une introduction au langage C++ Marc Jachym, Lurpa

Une introduction au langage C++ Marc Jachym, Lurpa Une introduction au langage C++ Marc Jachym, Lurpa Janvier 2008 À l origine, le langage C Langage procédural créé dans les années 1970 aux laboratoires Bell (ATT : télécoms américains) en vue d écrire

Plus en détail

Construire des applications «Extensibles»

Construire des applications «Extensibles» Construire des applications «Extensibles» Extensibilité / Patterns : Builder Factory Provider Module Pipeline Etc. IoC Containers MEF / System.ComponentModel.Composition + interfaces, abstraction Chaque

Plus en détail

Programmation Réseau. La sérialisation. Jean-Baptiste.Yunes@univ-paris-diderot.fr armand@informatique.univ-paris-diderot.fr. !

Programmation Réseau. La sérialisation. Jean-Baptiste.Yunes@univ-paris-diderot.fr armand@informatique.univ-paris-diderot.fr. ! Programmation Réseau La sérialisation Jean-Baptiste.Yunes@univ-paris-diderot.fr armand@informatique.univ-paris-diderot.fr UFR Informatique 2013-2014 Pourquoi Texte de la section Encoder l état mémoire

Plus en détail

Projet. Coloration lexicale et indentation de code Java

Projet. Coloration lexicale et indentation de code Java Université Paris Diderot Programmation Orientée Objet L3 Année 2011-2012 Projet Coloration lexicale et indentation de code Java Le but de ce projet est de développer un programme qui prend en entrée un

Plus en détail

Java Avancé - Cours 2

Java Avancé - Cours 2 Java avancé - cours 2 1/8 Java Avancé - Cours 2 Plan 1 Communication entre objets 1 1.1 Motivation....................................................... 1 1.2 Relations entre le panier et le rayon.........................................

Plus en détail

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf

Introduction à 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étail

Chapitre 6. Flux binaires (illustration sur les fichiers) Les flux. Plan. Flux. Types de Flux. Flux binaire entrant sur un fichier

Chapitre 6. Flux binaires (illustration sur les fichiers) Les flux. Plan. Flux. Types de Flux. Flux binaire entrant sur un fichier Chapitre 6 Les flux Flux binaires (illustration sur les fichiers) 05/12/03 Les flux page 1 05/12/03 Les flux page 5 Plan Flux binaires (flux d octets) Flux textes (flux de caractères) Conversions de flux

Plus en détail

Travaux pratiques : EJB avec JBoss 5 + Java 6 + Eclipse

Travaux pratiques : EJB avec JBoss 5 + Java 6 + Eclipse Travaux pratiques : EJB avec JBoss 5 + Java 6 + Eclipse Introduction Le but de ce TP est de programmer une application à la norme EJB en utilisant le serveur d application JBoss. Matériel requis - JBoss

Plus en détail

Année 2008-2009. Les exceptions Java. Nicolas Baudru mél : nicolas.baudru@esil.univmed.fr page web : nicolas.baudru.perso.esil.univmed.

Année 2008-2009. Les exceptions Java. Nicolas Baudru mél : nicolas.baudru@esil.univmed.fr page web : nicolas.baudru.perso.esil.univmed. Année 2008-2009 Les exceptions Java Nicolas Baudru mél : nicolas.baudru@esil.univmed.fr page web : nicolas.baudru.perso.esil.univmed.fr 1 Introduction Supposez que vous écrivez un programme qui accède

Plus en détail

1 Le Parking revisité

1 Le Parking revisité Module I6 - Manipulation de threads II 13 décembre 2012 1 Le Parking revisité Une société de gestion de parkings de voitures souhaite mettre en place un système automatique d affichage en temps réel de

Plus en détail

Plan Rappels sur les patrons de conception Contexte Annuaire JNDI Conception d Applications Hétérogènes Distribuées

Plan Rappels sur les patrons de conception Contexte Annuaire JNDI Conception d Applications Hétérogènes Distribuées Conception d Applications Hétérogènes Distribuées Master 2 Traitement de l Information Lionel Médini Septembre-novembre 2015 du cours Outils de programmation avancés Retour sur les patrons de conception

Plus en détail

TP Java RMI. Alexandre Denis Alexandre.Denis@inria.fr. Inria Bordeaux Sud-Ouest France ENSEIRB PG306

TP Java RMI. Alexandre Denis Alexandre.Denis@inria.fr. Inria Bordeaux Sud-Ouest France ENSEIRB PG306 TP Java RMI Alexandre Denis Alexandre.Denis@inria.fr Inria Bordeaux Sud-Ouest France ENSEIRB PG306 Paradigme RMI RMI (Remote Method Invocation) RPC orientés objet (encapsulation, héritage,...) objet :

Plus en détail

TP2. Mail et servlet. Quel port utilise smtp? A quoi servent les commandes HELO, MAIL FROM:, RCPT TO:, DATA?

TP2. Mail et servlet. Quel port utilise smtp? A quoi servent les commandes HELO, MAIL FROM:, RCPT TO:, DATA? Université Paris 7 M2 II Protocole Internet 1 Protocole SMTP TP2 Mail et servlet 1. Le protocole SMTP est définit dans la RFC 821 (mise à jour dans la RFC 2821). Le format des messages est spécifié dans

Plus en détail

Sensibilisation à RMI (Remote Method Invocation)

Sensibilisation à RMI (Remote Method Invocation) Jini Sensibilisation à RMI (Remote Method Invocation) Le rêve de tout système distribué L idéal serait d avoir un système distribué utilisant la technologie objet et permettant : 1) d invoquer une méthode

Plus en détail

TP d initiation aux systèmes et applications répartis

TP d initiation aux systèmes et applications répartis TP d initiation aux systèmes et applications répartis Grégory Mounié, Simon Nieuviarts, Sébastien Viardot Au début de l informatique, on exploitait simplement des ordinateurs. Maintenant, on construit

Plus en détail

LMI 2. Programmation Orientée Objet POO - Cours 7. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour

LMI 2. Programmation Orientée Objet POO - Cours 7. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour LMI 2 Programmation Orientée Objet POO - Cours 7 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Facult e des Sciences - Univ. Artois Janvier 2011 Exceptions

Plus en détail

Cours 8 : Exceptions, un peu de graphique

Cours 8 : Exceptions, un peu de graphique 1 Cours 8 : Exceptions, un peu de graphique 1. Traiter les exceptions usuelles 2. Créer ses propres exceptions 3. Exemples: les files. 4. Quelques éléments sur les graphiques 2 Exceptions Une exception

Plus en détail

L exemple qui est mis à votre disposition a pour but de rechercher les données contenues dans un fichier services.xml fourni :

L exemple qui est mis à votre disposition a pour but de rechercher les données contenues dans un fichier services.xml fourni : TP n 9 Xml/Json 1) Exemple d application analysant un fichier XML L exemple qui est mis à votre disposition a pour but de rechercher les données contenues dans un fichier services.xml fourni : Ce fichier

Plus en détail

Java 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 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étail

Java. Exception et Entrée/Sortie

Java. Exception et Entrée/Sortie Java Exception et Entrée/Sortie Plan Exception Principe, utilisation, création Paquetage java.io Notion de flots Organisation du paquetage Flots d octets Flots de caractères Exceptions Principe Définition

Plus en détail

«Anatomie» d une application web Servlets - JDBC

«Anatomie» d une application web Servlets - JDBC «Anatomie» d une application web Servlets - JDBC Patrick REIGNIER - Philippe GENOUDUJF Février 2005 1 L application histogramme de notes HistoServlet HistoServlet HistogramModel HistogramModel (objet (objet

Plus en détail

Intergiciels 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 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étail

Serveurs réseau. 2011 Pearson Education France Java, mise à jour pour Java 7 Timothy Fisher

Serveurs réseau. 2011 Pearson Education France Java, mise à jour pour Java 7 Timothy Fisher 11 Serveurs réseau En pratique, il y a bien plus de chances que vous écriviez du code de client réseau que du code de serveur réseau. Toutefois, bon nombre d applications intègrent à la fois des fonctionnalités

Plus en détail

TP JUnit 4.12. Première partie Le premier test d'une classe

TP JUnit 4.12. Première partie Le premier test d'une classe TP JUnit 4.12 Récupérez les deux fichiers junit.jar et hamcrest-core.jar à partir de l'url https://github.com/junit-team/junit/wiki/download-and-install (plus précisément à partir de l'url http://junit.org).

Plus en détail

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez

Plus en détail

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 7 : RMI

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 7 : RMI iut ORSAY DUT Informatique Département Informatique 2008 / 2009 Travaux Pratiques n o 7 : RMI Nom(s) : Groupe : Date : Objectifs : savoir créer des applications client-serveur mettant en jeu des machines

Plus en détail

Rapport du projet de Chat distribué avec Java RMI

Rapport du projet de Chat distribué avec Java RMI Rapport du projet de Chat distribué avec Java RMI 1. LE SUJET...2 2. VERSION 1...4 A. PRESENTATION ET PRINCIPE... 4 B. CARACTERISTIQUES CLIENT / SERVEUR... 6 3. VERSION 2...8 A. PRESENTATION ET PRINCIPE...

Plus en détail

Java Avancé - Cours 1 Solution des exercices

Java Avancé - Cours 1 Solution des exercices Solution des exercices Java Avancé - Cours 1 1/6 Java Avancé - Cours 1 Solution des exercices Liste des exercices: Exercice 1.1 Q1 On utilise les deux constructeurs suivants : java.io.inputstreamreader

Plus en détail

Programmation Orientée Objet. Exceptions et assertions

Programmation Orientée Objet. Exceptions et assertions Programmation Orientée Objet Exceptions et assertions Julien Provillard http://www.i3s.unice.fr/~provilla/poo/ julien.provillard@unice.fr Robustesse et Exceptions Error, RuntimeException Exceptions (non)

Plus en détail

CORBA. (Common Request Broker Architecture)

CORBA. (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étail

Chapitre 1. 1.1 types primitifs. 1.2 Casting

Chapitre 1. 1.1 types primitifs. 1.2 Casting Chapitre 1 Généralités 1.1 types primitifs byte (1 octet) peut contenir les entiers entre -128 et +127. short (2 octets) contient les entiers compris entre -32768 et +32767. int (4 octet) va de -2*10e9

Plus en détail

Une introduction à la technologie EJB (2/3)

Une introduction à la technologie EJB (2/3) Une introduction à la technologie EJB (2/3) 1 Les singletons des EJB 3.1 1.1 Synchronisation gérée manuellement Depuis la version 3.1, des EJB Statless à instance unique sont maintenant disponibles : ce

Plus en détail

Bureau d étude COO-POO COOKBOOK: BLUETOOTH POUR JAVA. NGOM Moctar Sarr Groupe 1 4RT 09/10

Bureau d étude COO-POO COOKBOOK: BLUETOOTH POUR JAVA. NGOM Moctar Sarr Groupe 1 4RT 09/10 Bureau d étude COO-POO COOKBOOK: BLUETOOTH POUR JAVA CHUI Rodney NGOM Moctar Sarr Groupe 1 4RT 09/10 Tuteur : M. ROMARIC I. Introduction Ce document permet de découvrir le processus de connexion entre

Plus en détail

Web Tier : déploiement de servlets

Web Tier : déploiement de servlets Web Tier : déploiement de servlets 1 / 35 Plan 1 Introduction 2 Servlet : Principe de fonctionnement 3 Création et développement sur un serveur JEE 4 Quelques méthodes de l API des servlets 5 Utilisation

Plus en détail

Applications Réparties TD 3 Web Services.NET

Applications Réparties TD 3 Web Services.NET Ce TD vous enseignera les bases de l'utilisation des Web Services en.net avec Visual Studio.NET 1 Introduction Vos applications.net, quelles soient Windows Forms ou Web Forms, peuvent avoir recours, dans

Plus en détail

Objectifs du cours: Gestion des exceptions. CSI1502 Principes fondamentaux en conception des logiciels. Prise en charge d`exception en Java

Objectifs du cours: Gestion des exceptions. CSI1502 Principes fondamentaux en conception des logiciels. Prise en charge d`exception en Java CSI1502 Principes fondamentaux en conception des logiciels Chapter 8: Gestion des exceptions Objectifs du cours: Gestion des exceptions Comprendre ce qui suit: Le fonctionnement de «try-catch» Propagation

Plus en détail