Servlets (fin) Accès aux paramètres. GET différend de POST GET : Paramètres dans l'url POST : Paramètres dans l'header

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

Download "Servlets (fin) Accès aux paramètres. GET différend de POST GET : Paramètres dans l'url POST : Paramètres dans l'header"

Transcription

1 Servlets (fin) Accès aux paramètres GET différend de POST GET : Paramètres dans l'url POST : Paramètres dans l'header Masqué par l'api Méthode getparameter(), getparametervalues() [page de forumulaire] dans le programme : public void doget(httpservletrequest req, httpservletresponse rep) throws ServletException, IOException{ rep.setcontenttype("text/html"); PrintWriter out = rep.getwriter(); String titre = "Lecture des paramètres"; out.println(servletutilities.headwithtitle(titre)."<body bgcolor=\"#fdf5e6\">\n" + "<h1 align=center>" + titre + "</h1>\n" + "<table border=1 align=center>\n" + "<tr bgcolor=\#ffad00\">\n" + "<th>parametre<th>valeur"); Enumeration paramnames = req.getparameternames(); while(paramnames.hasmoreelements()){ String nom = (String)(paramNames.Element()); out.println("<tr><td>"+nom+"\n<td>"); String[] valeurs = req.getparametervalues(nom); if(valeurs.length == 1){ else{ out.print(valeurs[0]); out.println("<ul>"); for(int i=0;i<valeurs.length;i++){ out.println("<li>"+valeurs[i]); out.println("</ul>");

2 out.println("</table>\n</body>\n</html>"); Ex : : servlet de connexion à un annuaire login : etudiant/etudiant (voir /persist/tomcat-instances/annuaire.com) Gestion de la persistance 1) Les Cookies Petits objets contenant des informations textuelles Le serveur envoie le cookie au client, et peut demander à ce que le client lui renvoie le cookie. Buts : 1. Identifier le client pendant un échange multi-pages 2. Eviter les saisies multiples login/password 3. Adapter les réponses à un profil de client API : class Cookie(nom, valeur) HttpServletResponse.addCookie(Cookie) HttpServletRequest.getCookies() -> Cookie[] Cookie.getName() : String Cookie.getValue() : String 2) URL rewriting Passer les infos souhaités dans l'url de la requête Fonctionne même si les cookies sont désactivés. Sécurité très faible 3) Champs cachés (Hidden Form Fields) <input type="hidden" name="session" value="..."> Valable uniquement sur les pages dynamiques Visible du client 4) Utiliser la classe HttpSession session : ensemble de clés/valeurs (~ensemble de cookies)

3 ex : HttpSession session = req.getsession(true); // true = créer session si elle n'existe pas. Caddie achats = (Caddie)session.getValue("achats"); // traite achats if(achat!= null) dosomethingwith(achats); else { achats = new Caddie(); dosomethingwith(achats); Problème : Algorithme et présentation sont mélangés dans les méthodes de servlets doget() et dopost() JSP : Java Server Pages But : séparer la partie statique (html) des pages de ce qui dépend de traitements. En général, les moteurs de servlets savent interpréter les jsp. Tags : <%...%> URL : Page :... //html Merci d'avoir acheté <i><%=request.getparameter("title")%></i> Contenu typique : Code html Éléments de script Directives Actions Element de script : Expression introduites par <%=... %> sont évalués et placées dans le code servlet resultant Scriptlets : <%... %> contiennent du code java directement classés dans la méthode service() de la servlet générée. Déclaration <%!... %>

4 Request response session out... Sont prédéfinis et utilisables. Ex : <%String data = req.getquerystring(); out.println("get data = " +data); %> <%! private int accesscount=0;%> Nombre d'accès à la page = <%=++accesscount%> Directives : Page : import de classe, adaptation de la superclasse... Include : insérer un fichier juste avant la traduction en servlet. <%page attribut = "valeur" ;%> ex : import="moi.maclasse" content-type="data/octet-stream" extends="moi.uneclasse"... <%include file="url relative" %> Actions : Instructions "à la" XML qui précisent l'exécution de la servlet générée. jsp:include -> fichier (dynamique) jsp:usebean -> utiliser un javabean jsp:get/setproperty -> pour un javabean jsp:forward -> redirige vers une autre page jsp:plugin -> code dépendant du client Ex: <jsp:include page="recentnews.html"/> <jsp:usebean id="test" class="moi.beans.exemple"/>

5 <jsp:setproperty name="test" property="message" value="hello, World"/> <h2>message : <i><jsp:getproperty name="test" property="message"/></i></h2> <jsp:forward page="/util/errorpage.jsp"/> RMI Remote Method Invocation Idée : Deux machines (client/serveur) se partagent la définition d'une interface, et c'est la seule chose qui suffit au client pour que dans son programme, il puisse faire des appels aux services, qui tournent chez le serveur. L'échange se fait en RMI. Interface Programme client Programme serveur Stub/Skeleton Gestion des paramètres de retour RMI Références distantes Extension mécanisme distant Transport Étapes typiques : 1) Interface publiant les services rendus par l'objet 2) Implémentation des services 3) Génération des stub/skeleton 4) Service de nommage (le client peut ne pas savoir quel serveur détient l'objet) 5) Fournisseur de bytecode (serveur FTP/HTTP) Ex : Publication d'un compteur Etape 1 (Serveur) : définition de l'interface // Counter.java package moi.rmi; import java.rmi.*; public interface Counter extends Remote{

6 public int values() throws RemoteException; public Counter incr() throw RemoteException; public Counter decr() throw RemoteException; // CounterImpl.java package moi.rmi; import java.rmi.*; public class CounterImpl extends UnicastRemoteObject implements Counter{ protected int valeur; public CounterImple() throws RemoteException{ valeur = 0; public Counter incr() throws RemoteException{ valeur++; return this; public Counter decr() throws RemoteException{... public int valeur() throws RemoteException{ return valeur; // CounterServeur.java Programme serveur package moi.rmi; import java.rmi.*; public class CounterServer{ public CounterServer(String nom){ // Nom sous lequel le serveur publiera l'objet dans l'annuaire try{ Counter c = new CounterImpl(); //Etape 1 : Instanciation Naming.rebind("rmi://localhost:1099/"+nom,c); //Etape 2 : enregistrement catch(exception e){system.err.println(e.getmessage); public static void main(string args[]){

7 String nom = "servicecompteur"; try{nom=args[0];catch(exception e){ new CounterServer(nom); Publication : javac Counter.java CounterImpl.java rmic moi.rmi.counterimpl javac CounterServer.java rmiregistry& java moi.rmi.counterserver compteur Côté client : 1) Doit disposer - De l'url d'accès - Du code de l'interface - Du code du stub 2) Utilisation : CounterClient.java // CounterClient.java package moi.tests; import java.rmi.*; import java.net.*; import moi.rmi.*; public class CounterClient{ public static void main(string args[]){ String host = "localhost"; String nom = "compteur"; try{ host=args[0]; nom=args[1]; catch(exception e){ System.setSecurityManager(new RMISecurityManager()); try{ Counter c = (Counter)Namming.lookup("rmi://"+host+"/"+nom);

8 System.out.println(c.valeur()); c.incr().incr(); System.out... catch(malformedurlexception e1){... catch(remoteexception e2){... catct(notboundexception e3){... // Erreur sur le host ou le port // rmi.registry absentes // Objet serveur non trouvé Utilisation : $javac CounterClient.java $java moi.tests.counterclient 0 2 $java moi.tests.counterclient 2 4 ~/.java.policy grant{ permission java.security.allpermission "", ""; ; alias java="java -D java.security.policy=$home/.java.policy " java -D java.rmi.server.codebase="http://myserver/mydir" moi.tests.counterclient Communication par Sockets en java Un socket est une paire de tubes : un en lecture/ecriture dans un sens, et l'autre dans l'autre Socket = canal d'entrée, canal de sortie, correspondant, port -> class Socket, java.net Socket(host, port) (String,int) getinputstream() -> InputStream getoutputstream() -> OutputStream

9 close(); En général, utilisés dans une approche Client/Serveur Ex : Client "echo" (défaut 7) package moi.net; import java.net.*; import java.io.*; public class ClientEcho{ public static void main(string args[]){ Socket s; String host="localhost"; int port = 7777; try{host=args[0];port=integer.parseint(args[1]); catch(exception e){... try{ s=new Socket(host,port); BufferedReader in, stdin; PrintStream out; in = new BufferedReader(new InputStreamReader(s.getInputStream())); out = new PrintStream(s.getOutputStream()); stdin = new BufferedReader(new InputStreamReader(System.in)); String ligne; while(true){ ligne = stdin.readline(); if(ligne.equals(".")) break; out.println(ligne); System.out.println(in.readLine()); s.close(); catch(unknownhostexception e1){... catch(ioexception e2){... Côté serveur : while true attendre demande de connexion client while connexion ouverte lire ligne

10 traiter ligne envoyer réponse fermer connexion Utilisation de la classe ServerSocket Remarques : 1) Algorithme de serveur mono-threadé. -> Déporter la gestion de la connexion dans un thread ServerSocket(port) java.net accept() -> Socket // Bloquante close() ServerSocket Thread * * TCPServer -nomconnexion : string -port : int +run() +main() Connexion +run() +handle(entrée String) +setsocket(entrée Socket) EchoConnexion AnnuaireConnexion +handle(entrée String) +handle(entrée String)

Pour plus de détails concernant le protocole TCP conférez vous à la présentation des protocoles Internet enseignée pendant.

Pour plus de détails concernant le protocole TCP conférez vous à la présentation des protocoles Internet enseignée pendant. Chapitre 7 Le mode de communication en connexion est, a priori, supporté par le protocole TCP. Ce protocole fournit une communication fiable; les données sont transmises comme chaînes d octets. Avant de

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

Programmation servlet

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

Plus en détail

Applications Web. Cours 2: Introduction J2EE Servlets et JSP. Khaled Khelif

Applications Web. Cours 2: Introduction J2EE Servlets et JSP. Khaled Khelif Applications Web Cours 2: Introduction J2EE Servlets et JSP Khaled Khelif 1 Rappel Web statique vs. Web dynamique Principe des applications web Protocole HTTP : requêtes en mode texte Développement d applications

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

RMI le langage Java XII-1 JMF

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

Programmation réseaux avec le langage Java

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

Plus en détail

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

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

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

TP 3 Programmation client/serveur

TP 3 Programmation client/serveur PhL - 20/03/2007 - Page 1 / 5 TP 3 Programmation client/serveur 1. Modèle de programmation 1. Introduction Au-dessus des protocoles de transmission, on peut construire des applications réparties reposant

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

Package java.net. Interfaces Interface ContentHandlerFactory Interface SocketImplFactory Interface URLStreamHandlerFactory

Package java.net. Interfaces Interface ContentHandlerFactory Interface SocketImplFactory Interface URLStreamHandlerFactory Package java.net Classes class ContentHandler class DatagramPacket class DatagramSocket class InetAddress final class ServerSocket final class Socket class SocketImpl final class URL abstract class URLConnection

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

Environnements de Développement

Environnements de Développement Institut Supérieur des Etudes Technologiques de Mahdia Unité d Enseignement : Environnements de Développement BEN ABDELJELIL HASSINE Mouna m.bnaj@yahoo.fr Développement des systèmes d Information Syllabus

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

Implémentée sous forme de JavaBean ou EJB, c est dans cette couche que l on retrouve l ensemble des traitements d une application.

Implémentée sous forme de JavaBean ou EJB, c est dans cette couche que l on retrouve l ensemble des traitements d une application. Introduction Nous allons parler, dans ce document consacré aux architectures multi-tiers en environnement J2EE, de 3 des cinq couches les plus représentatives. Faisons tout d'abord un petit rappel sur

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

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

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

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

Les servlets Le langage Java Les Servlets XVII-1 JMF

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

Plus en détail

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

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

RMI : Remote Method Invocation Appel de méthodes à distance RMI : Remote Method Invocation Appel de méthodes à distance Patrice Torguet torguet@irit.fr Université Paul Sabatier Plan du cours l Les RPC l Architecture et fonctionnement de RMI l Etapes de développement

Plus en détail

Programmation Internet en Java

Programmation Internet en Java Chapitre 8 Programmation Internet en Java Vous avez déjà utilisé Internet, le plus connu des inter-réseaux mondiaux d ordinateurs et quelques-uns de ses services, en particulier le web et le courrier électronique.

Plus en détail

Remote Method Invocation Les classes implémentant Serializable

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

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

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

Ala Eddine BEN SALEM. T.P. 2 Servlet

Ala Eddine BEN SALEM. T.P. 2 Servlet EPITA Ala Eddine BEN SALEM App-Ing2 J2EE T.P. 2 Servlet 1. Création d'un projet Web: A l'aide d'eclipse, créer un nouveau projet «sampleservlet» avec comme environnement d'exécution le serveur Tomcat installé

Plus en détail

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

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. ASTRIUM - Toulouse JEE Formation 2013 TP JEE Développement Web en Java Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. Figure 1 Architecture

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

Calcul Parallèle. Cours 5 - JAVA RMI

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

C est quoi JSP? JSP = Java Server Pages

C est quoi JSP? JSP = Java Server Pages JSP = Java Server Pages C est quoi JSP? Une JSP est un fichier contenant du code HTML et des fragments de code Java exécutés sur le moteur de Servlets Comparable aux langages côtés serveur de type PHP,

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

Remote Method Invocation

Remote Method Invocation Remote Method Invocation 1999, Cnam Paris jean-michel Douin, douin@cnam.fr Notes de cours consacrées à RMI Version du 18 Mars 2002 http://lmi92.cnam.fr:8080/tp_cdi/douin/java_rmi.pdf http://lmi92.cnam.fr:8080/tp_cdi/tprmi/tprmi.html

Plus en détail

TD6 Initiation aux EJB3 avec Eclipse Ecriture d une application J2EE complète

TD6 Initiation aux EJB3 avec Eclipse Ecriture d une application J2EE complète TD6 Initiation aux EJB3 avec Eclipse Ecriture d une application J2EE complète Nous allons écrire une application J2EE qui permet dans un navigateur web de gérer des contacts. Pour cela, nous allons suivre

Plus en détail

Cours. Majeure Informatique Ecole Polytechnique. Applications client/serveur

Cours. Majeure Informatique Ecole Polytechnique. Applications client/serveur Cours Système et Réseaux Majeure Informatique Ecole Polytechnique 7 Applications client/serveur François Bourdoncle Francois.Bourdoncle@ensmp.fr http://www.ensmp.fr/ bourdonc/ 1 Plan Les sockets d Unix

Plus en détail

RESEAUX. Communications dans les systèmes Centralisés vs Répartis. Le modèle OSI : 7 couches Open System Interconnexion. Plan.

RESEAUX. Communications dans les systèmes Centralisés vs Répartis. Le modèle OSI : 7 couches Open System Interconnexion. Plan. RESEAUX Communications dans les systèmes Centralisés vs Répartis Espace utilisateur P1 P2 P1 P2 Programmation par sockets Espace noyau Systèmes centralisés Systèmes répartis Nécessité d avoir une mémoire

Plus en détail

La plate-forme Java RMI

La plate-forme Java RMI La plate-forme Java RMI Frank Singhoff Bureau C-202 Université de Brest, France Lab-STICC/UMR 3192 singhoff@univ-brest.fr UE systèmes à objets répartis, Université de Brest Page 1/25 Sommaire 1. Le modèle

Plus en détail

Tarak CHAARI Application Web en Java ISECS 2

Tarak CHAARI Application Web en Java ISECS 2 Programmation d Application Web avec Java Tarak CHAARI tarak.chaari@isecs.rnu.tn Université de Sfax, 2009-20102010 Tarak CHAARI Application Web en Java Version adaptée ISECS du cours de Mr Walid MAHDI

Plus en détail

Applications Web et servlets Java

Applications Web et servlets Java Département de génie logiciel et des TI LOG660 - Base de données haute performance Applications Web et servlets Java Application Web Une application Web répartie sur trois couches (three-tier Web application)

Plus en détail

Master Miage 2010-2011 Réseau. La couche Application II. Les sockets : l API de la couche transport

Master Miage 2010-2011 Réseau. La couche Application II. Les sockets : l API de la couche transport Master Miage Réseau La couche Application II Les sockets : l API de la couche transport 2 Protocoles de couche application API: Application Programming Interface Définit l interface entre l application

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

Problématique. Développement Web 2. Problématique. Jetty Création d un serveur Web

Problématique. Développement Web 2. Problématique. Jetty Création d un serveur Web Communication client/serveur Comet Problématique Problématique Développement Web 2 Problématique : Nous souhaitons réaliser un tchat Les clients se connectent au serveur; Les clients peuvent discuter;

Plus en détail

Java - RMI Remote Method Invocation. Stéphane Frénot -MID - V.0.2.0 Part I - RMI 1

Java - RMI Remote Method Invocation. Stéphane Frénot -MID - V.0.2.0 Part I - RMI 1 Java - RMI Remote Method Invocation Stéphane Frénot -MID - V.0.2.0 Part I - RMI 1 Répartition d'une application Application de Présentation Middleware Implicite Application de traitement Application de

Plus en détail

JavaServer Pages (JSP)

JavaServer Pages (JSP) JavaServer Pages (JSP) XVIII-1 Prérequis pour ce cours Ce cours a trait à la programmation Java coté serveur Il faut connaître un minimum de technologie J2EE Il faut connaître les servlets XVIII-2 Motivation

Plus en détail

Systèmes répartis : Remote Method Invocation p.1/74

Systèmes répartis : Remote Method Invocation p.1/74 Systèmes répartis : Remote Method Invocation Fabrice Rossi http://apiacoa.org/contact.html. Université Paris-IX Dauphine Systèmes répartis : Remote Method Invocation p.1/74 Plan 1. Introduction 2. JRMP

Plus en détail

EXAMEN DE JAVA 2010-2011

EXAMEN DE JAVA 2010-2011 NOM : PRÉNOM : TP : G TP EXAMEN DE JAVA 2010-2011 Consignes : avec documents, mais sans téléphone, ordinateur ou autre moyen de communication. Durée : 2h Recommandations : Le code doit être écrit en JAVA

Plus en détail

TP 3 Outils de programmation Web

TP 3 Outils de programmation Web TP 3 Outils de programmation Web L'objectif de ce TP est de bien comprendre et maîtriser la technologie des servlets. La maîtrise de ces briques de base doit vous permettre de construire de larges applications

Plus en détail

Exercice sur les EJB Session avec état

Exercice sur les EJB Session avec état Exercice sur les EJB Session avec état Soit un site de commerce électronique appartenant à un fournisseur de matériel informatique. Une page principale permet à l utilisateur de s inscrire, donc de saisir

Plus en détail

APPLICATIONS JAVA. 3. JSP Java Server Pages. JSP - Java Server Pages Servlet. http://139.124.26.245/pi. Java Server Pages (JSP) IvMad, 2011-2013 2

APPLICATIONS JAVA. 3. JSP Java Server Pages. JSP - Java Server Pages Servlet. http://139.124.26.245/pi. Java Server Pages (JSP) IvMad, 2011-2013 2 APPLICATIONS JAVA JSP - Java Server Pages Servlet Java Server Pages (JSP) IvMad, 2011-2013 2 3. JSP Java Server Pages http://139.124.26.245/pi Java Server Pages (JSP) IvMad, 2011-2013 3 JSP - Introduction

Plus en détail

Dis papa, c est quoi un bus logiciel réparti?

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

6. JSP. Cours Web. Java Server Pages (JSP) 6. JSP 6. JSP. Java Server Pages (JSP) Lionel Seinturier. Université Pierre & Marie Curie

6. JSP. Cours Web. Java Server Pages (JSP) 6. JSP 6. JSP. Java Server Pages (JSP) Lionel Seinturier. Université Pierre & Marie Curie Cours Web Java Server Pages (JSP) Lionel Seinturier Université Pierre & Marie Curie Lionel.Seinturier@lip6.fr 11/7/02 Java Server Pages (JSP) Programme Java s'exécutant côté serveur Web servlet prog. "autonome"

Plus en détail

Partie 2.2: Servlet et Tomcat

Partie 2.2: Servlet et Tomcat Partie 2.2: Servlet et Tomcat 1 Plan du cours Servlets Présentation Exemple 2 Plan du cours Tomcat Des servlets à Tomcat: pourquoi Tomcat? Architecture Tomcat Installation et configuration de Tomcat Configuration

Plus en détail

Résumé Introduction Programmation Java

Résumé Introduction Programmation Java Résumé Introduction Programmation Java Concepts Un programme : séquence, test conditionnel, boucles. Objets : Les objets Java modélisent les objets d un problème donné Classe : Les objets sont crées à

Plus en détail

JAVA PROGRAMMATION. Programme. 1. Java, HTML et World Wide Web

JAVA PROGRAMMATION. Programme. 1. Java, HTML et World Wide Web PROGRAMMATION PUBLIC Professionnels informatiques qui souhaitent développer des applications et «applets» Java DUREE 4 jours 28 heures OBJECTIF Créer divers «applets» à intégrer dans un site Web dynamique,

Plus en détail

Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer. L3 Pro Informatique - 2010-2011

Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer. L3 Pro Informatique - 2010-2011 1 / 34 Développement Web - Servlet Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer L3 Pro Informatique - 2010-2011 2 / 34 Plan Plan 1 Introduction 2 Servlet

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

AP-5 TD n 2 J2EE 5 novembre 2013

AP-5 TD n 2 J2EE 5 novembre 2013 Objectifs Prérequis Gestion des informations temporaires, sessions et cookies JSP et servlets, mise en place d un contrôleur Java Runtime Environnement (http://www.java.com/fr/download/) (JRE Java 7) IDE

Plus en détail

Programmation par sockets-java

Programmation par sockets-java 2A-SI 3 Prog. réseau et systèmes distribués 3.1 - Programmation par sockets-java Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle Support de cours élaboré avec l aide de l

Plus en détail

Plan du cours 5:Threads

Plan du cours 5:Threads Plan du cours 5:Threads introduction Définition Création des Threads Gestion des priorités Synchronisation Page : 1 Introduction(1) Les structure de contrôle: If.. Else.. While Switch. Try..catch.. Offrent

Plus en détail

Etude de cas PLM. Patrice TORGUET IRIT Université Paul Sabatier

Etude de cas PLM. Patrice TORGUET IRIT Université Paul Sabatier Etude de cas PLM Patrice TORGUET IRIT Université Paul Sabatier Plan Exemple PLM Répartition avec Sockets Répartition avec RMI Répartition avec CORBA Répartition avec JMS Répartition avec Java EE Améliorations

Plus en détail

JSP/Servlets Enchaînement de pages. B. Mermet 2009

JSP/Servlets Enchaînement de pages. B. Mermet 2009 JSP/Servlets Enchaînement de pages B. Mermet 2009 Spécification d'une adresse cible Adresse absolue protocole://adresse Adresse relative à l'application /adressepage Adresse relative à la page adressepage

Plus en détail

Programmation JAVA / J2EE

Programmation JAVA / J2EE Programmation JAVA / J2EE Auteur : François-Xavier SENNESAL Web: www.sennesal.fr Email: 1 SOMMAIRE 1. Rappels sur les fondamentaux du web 2. Mise en place de l environnement 3. Fondamentaux du langage

Plus en détail

Intergiciel - concepts de base

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

Remote Method Invocation (RMI)

Remote Method Invocation (RMI) Remote Method Invocation (RMI) Pierre Gançarski Mars 2010 1 Présentation L'objectif est de permettre à des applications clientes (s'exécutant localement) d'invoquer des méthodes sur des objets distants,

Plus en détail

C. Java et le Web. Olivier Curé - UMLV [page 232 ]

C. Java et le Web. Olivier Curé - UMLV [page 232 ] C. Java et le Web Olivier Curé - UMLV [page 232 ] Plan C.1. Java côté client : Applet C.2. Java côté serveur : Servlet et JSP Olivier Curé - UMLV [page 233 ] Java côté client : Applet Olivier Curé - UMLV

Plus en détail

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

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

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

Les Systèmes et Applications Réparties et leur Programmation

Les Systèmes et Applications Réparties et leur Programmation Les Systèmes et Applications Réparties et leur Programmation Samia Bouzefrane Maître de Conférences Laboratoire CEDRIC Conservatoire National des Arts et Métiers 292 rue Saint Martin 75141 Paris Cédex

Plus en détail

Programmation Web Avancée JSP

Programmation Web Avancée JSP 1/50 Programmation Web Avancée JSP Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR Léonard de Vinci 74, rue Marcel Cachin, F-93017

Plus en détail

TD2: Servlets et bases de données; initiation aux EJB3 avec Eclipse

TD2: Servlets et bases de données; initiation aux EJB3 avec Eclipse TD2: Servlets et bases de données; initiation aux EJB3 avec Eclipse 1. Sérialisation de requêtes Nous allons étudier ici les possibilités offertes par les servlets en tant que services offerts à un programme

Plus en détail

Communication inter-processus (IPC) : tubes & sockets. exemples en C et en Java. F. Butelle

Communication inter-processus (IPC) : tubes & sockets. exemples en C et en Java. F. Butelle F. Butelle, E. Viennet, Système GTR2 IUT Paris 3 Communication inter-processus (IPC) : tubes & sockets exemples en C et en Java F. Butelle F. Butelle, E. Viennet, Système GTR2 IUT Paris 3 Java : implémentation

Plus en détail

SOA et Services Web. 23 octobre 2011. Evolution des Systèmes d Information

SOA et Services Web. 23 octobre 2011. Evolution des Systèmes d Information SOA et Services Web 23 octobre 2011 1 Evolution des Systèmes d Information 2 Qu est ce qu une application répartie? Il s agit d une application découpée en plusieurs unités Chaque unité peut être placée

Plus en détail

Serveurs Web dynamiques

Serveurs Web dynamiques Serveurs Web dynamiques Daniel Hagimont Laurent Broto IRIT/ENSEEIHT 27 février 2011 1 / 50 Copyright (c) 2010 Daniel Hagimont & Laurent Broto. Permission is granted to copy, distribute and/or modify this

Plus en détail

Gestion distribuée (par sockets) de banque en Java

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

Projet de programmation (IK3) : TP n 1 Correction

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

Cours 9 : Servlet, JSP, corba

Cours 9 : Servlet, JSP, corba Cours 9 - PC2R - UPMC - 2009/2010 p. 1/40 Cours 9 : Servlet, JSP, corba chargement dynamique (cours 7) Applet (cours 4) Servlet JSP Corba Cours 9 - PC2R - UPMC - 2009/2010 p. 2/40 servlet du coté serveur:

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

T.P. 3 Base de données, JDBC et Mapping Objet-relationnel

T.P. 3 Base de données, JDBC et Mapping Objet-relationnel EPITA Ala Eddine BEN SALEM App-Ing2 J2EE T.P. 3 Base de données, JDBC et Mapping Objet-relationnel L'objectif de ce TP est de vous faire pratiquer l'api JDBC qui permet d'accéder à une base de données

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

Systèmes distribués avec Java RMI

Systèmes distribués avec Java RMI Systèmes distribués avec Java RMI Vania Marangozova-Martin Vania.Marangozova-Martin@imag.fr ibd.forge.imag.fr Pourquoi Java RMI? u A plus bas niveau nous avons le mécanisme de sockets A socket is one end-point

Plus en détail

M2 FMIN305 - Novembre 2010 CORBA

M2 FMIN305 - Novembre 2010 CORBA FMIN05 - Novembre 0 Ce TD est très largement inspiré de ceux de Gilles Roussel. Vous trouverez beaucoup de choses intéressantes ici : http://www-igm.univ-mlv.fr/ roussel. 1 Horloge distante On souhaite

Plus en détail

Comprendre et programmer le protocole HTTP

Comprendre et programmer le protocole HTTP Comprendre et programmer le protocole HTTP Ces quatre lettres vous sont forcément familières, c est peut être la suite de lettres la plus utilisée au monde. Chaque jour en tapant http:// dans votre navigateur

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

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

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

Programmation répartie RPC & RMI

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

Java côté serveur. Eugen Dedu Eugen.Dedu@pu-pm.univ-fcomte.fr http://lifc.univ-fcomte.fr/~dedu/ UFC, IUP 3ème année Montbéliard septembre 2004

Java côté serveur. Eugen Dedu Eugen.Dedu@pu-pm.univ-fcomte.fr http://lifc.univ-fcomte.fr/~dedu/ UFC, IUP 3ème année Montbéliard septembre 2004 Java côté serveur Eugen Dedu Eugen.Dedu@pu-pm.univ-fcomte.fr http://lifc.univ-fcomte.fr/~dedu/ UFC, IUP 3ème année Montbéliard septembre 2004 Plan Pages avec contenu mixte (Java Server Pages) beans Intégration

Plus en détail

Exercice commenté. Mailer java. 1. Intitulé. 2. Approche

Exercice commenté. Mailer java. 1. Intitulé. 2. Approche Exercice commenté Auteur : cj-tronquet@ifrance.com Mailer java 1. Intitulé Ecrire une applet qui permette d envoyer un e-mail à partir d une page web. Cette applet devra contenir les champs From:, To:,

Plus en détail

Introduction à la programmation en Java. Java sans Bluej. Ligne de commande entrées/sorties fichiers. Où en sommes-nous? Hello, world!

Introduction à la programmation en Java. Java sans Bluej. Ligne de commande entrées/sorties fichiers. Où en sommes-nous? Hello, world! Introduction à la programmation en Java Frédéric MALLET Jean-Paul ROY U.F.R. Sciences de Nice Licence Math-Info 2006-2007 Module L1I1 12-1 Où en sommes-nous? Nous savons rédiger le texte d une classe d

Plus en détail

Support de Cours Christophe Dony Université Montpellier-II

Support de Cours Christophe Dony Université Montpellier-II Cours de base d Ingéniérie des applications objet. Généralités sur le langage Java - Modèle d exécution - Syntaxe Support de Cours Christophe Dony Université Montpellier-II 1 Le langage Java 1.1 Langage

Plus en détail

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Structure d un programme et Compilation Notions de classe et d objet Syntaxe Cours1 +Cours 2 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

Plus en détail

Mise en œuvre des serveurs d application

Mise en œuvre des serveurs d application Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/62 Ces transparents, ainsi que les énoncés

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

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