2 Chapitre 1 Introduction

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

Download "2 Chapitre 1 Introduction"

Transcription

1 1 Introduction Ce livre présente les Enterprise JavaBeans 2.0 et 1.1 qui constituent la troisième et la deuxième version de la spécification des Enterprise JavaBeans. Tout comme la plate-forme Java a révolutionné la façon de voir le développement de logiciels, les Enterprise JavaBeans promettent de révolutionner la façon de développer les logiciels d entreprise critiques. Ils combinent les composants côté serveur aux technologies d objets distribués et aux messages asynchrones afin de simplifier le développement d applications. Ils prennent en compte automatiquement beaucoup des contraintes des systèmes d entreprise : sécurité, groupe de ressources, persistance, concurrence et intégrité transactionnelle. Ce livre montre comment utiliser les Enterprise JavaBeans pour développer des systèmes d entreprise portables et évolutifs. Mais avant de commencer à parler des EJB euxmêmes, nous avons besoin d une brève introduction aux technologies visées par les EJB, comme les modèles de composants, les objets distribués, les CTM (Component Transaction Monitors) et les messages asynchrones. Il est important de comprendre un minimum des CTM, la technologie sur laquelle repose les EJB. Aux chapitres 2 et 3, nous commencerons à examiner les EJB eux-mêmes et nous verrons comment les beans métier sont assemblés. Le reste du livre concerne le développement de beans métier pour une société fictive et une présentation des problèmes avancés. Nous supposons que vous êtes déjà familier de Java ; si ce n est pas le cas, Introduction à Java écrit par Patrick Niemeyer et Jonathan Knudsen (Éditions O Reilly) est une excellente introduction. Ce livre suppose aussi que vous connaissiez l API JDBC, ou au moins SQL. Si vous n êtes pas familier de JDBC, lisez JDBC et Java - Guide du programmeur, de George Reese (Éditions O Reilly). Une des fonctionnalités de Java les plus importantes est d être indépendant de la plateforme. Depuis sa première version, Java a été présenté sous le slogan «écrire une fois, exécuter partout». Bien que ce matraquage soit parfois devenu un peu maladroit, le code écrit en langage Java est remarquablement indépendant de la plate-forme. Les Enterprise JavaBeans ne sont pas simplement indépendants de la plate-forme, ils sont aussi indépendant de l implémentation. Si vous avez déjà travaillé avec JDBC, vous savez un peu ce que cela signifie. Non seulement l API JDBC peut s exécuter sur une machine

2 2 Chapitre 1 Introduction Windows ou une machine Unix, mais elle peut aussi accéder aux bases de données relationnelle des différents fournisseurs (DB2, Oracle, Sybase, SQLServer, etc.) à l aide des pilotes JDBC spécifiques. Vous n avez pas à programmer de façon spécifique à l implémentation de la base de données ; il suffit de changer de pilote pour changer de base de données. Il en va de même avec les EJB. Idéalement, un composant EJB, un bean métier, peut s exécuter sur n importe quel serveur d applications qui implémente la spécification des EJB 1. Cela signifie que vous pouvez développer et déployer votre système d entreprise EJB sur un serveur, comme Orion ou WebLogic de BEA, puis plus tard le déplacer sur un serveur d EJB différent, comme Pramati, EAServer de Sybase, Web- Sphere d IBM, ou un projet en open source, comme OpenEJB, JOnAS ou JBoss. L indépendance de l implémentation signifie que vos composants métier ne sont pas dépendants de la marque du serveur. Autrement dit, vous avez plus de choix avant, pendant et après le développement et le déploiement. Quelques concepts Avant de définir les Enterprise JavaBeans de façon plus précise, préparons le terrain en examinant un nombre important de concepts : les objets distribués, les objets métier, les CTM et les messages asynchrones. Objets distribués L informatique distribuée permet de rendre un système d entreprise plus accessible. Les différentes parties d un système distribué peuvent se trouver sur des ordinateurs séparés, en plusieurs endroits potentiellement éloignés où ils prennent tous leur sens. Autrement dit, l informatique distribuée permet d accéder à la logique et aux données métier à distance. Les clients, les partenaires et d autres intervenants distants peuvent utiliser un système d entreprise à tout moment où qu ils se trouvent. Le développement le plus récent dans l informatique distribuée sont les objets distribués. Les technologies d objets distribués, comme Java RMI, CORBA et.net de Microsoft, permettent aux applications client présentes sur des ordinateurs d accéder à des objets s exécutant sur une autre machine. Les objets distribués sont apparus sous forme d une architecture trois-tiers utilisées dans les systèmes à moniteur TP comme CICS d IBM et TUXEDO de BEA. Ces systèmes séparent la présentation, la logique métier et les bases de données en trois tiers distincts (ou couches). Par le passé, ces systèmes étaient habituellement composés d un «écran vert» ou de terminaux passifs pour le tiers présentation (le premier tiers), d applications en COBOL ou PL/1 sur le tiers intermédiaire (le deuxième tiers) et de bases de données, comme DB2, pour le backend (le troisième tiers). L introduction des objets distribués ces dernières années a donné naissance à une nouvelle forme d architecture trois-tiers. Les technologies d objets distribués ont permis le remplacement des applications en COBOL et PL/1 du tiers intermédiaire par des objets métier. Une architecture métier trois-tiers à base d objets distribués peut avoir comme premier tiers une interface 1. À condition que les beans et les serveurs d EJB soient conformes à la spécification et qu aucune fonctionnalité propriétaire ne soit utilisée pour le développement.

3 Quelques concepts 3 graphique ou web sophistiquée, des objets métier dans le tiers intermédiaire et une base de données relationnelle ou d un autre type comme backend. Des architectures plus complexes dans lesquelles de nombreux tiers sont souvent utilisées : différents objets résident sur différents serveurs et interagissent afin de réaliser leur travail. La création de ces architectures n-tiers à l aide des Enterprise JavaBeans est particulièrement facile. Composants côté serveur Les langages orientés objet, comme Java, C++ et Smalltalk, permettent d écrire des logiciels souples, évolutifs et réutilisables les trois axiomes du développement orienté objet. Dans les systèmes d entreprise, les langages orientés objets sont utilisés pour améliorer le développement de l interface graphique, pour simplifier l accès aux données et pour encapsuler la logique métier. L encapsulation de la logique métier dans des objets métier est devenue le point de focalisation le plus récent dans l industrie informatique. Le métier est fluide, ce qui signifie que les produits, les processus et les objectifs de l entreprise évoluent au fil du temps. Si le logiciel qui modélise le métier peut être encapsulé dans des objets métier, il devient souple, évolutif et réutilisable, et il peut donc suivre l évolution du métier. Un modèle de composants côté serveur définit une architecture pour le développement d objets métier distribués qui combinent l accessibilité des systèmes à objets distribués avec la fluidité de la logique métier utilisant les objets. Les modèles de composants côté serveur sont utilisés sur les serveurs d applications dans le tiers intermédiaire qui gère l exécution des composants et les rendent disponibles aux clients distants. Ils fournissent les fonctionnalités facilitant le développement d objets métier distribués et les assemblent en solutions d entreprise. Les composants côté serveur peuvent aussi servir à modéliser d autres aspects du système d entreprise, comme la présentation et le routage. Par exemple, une servlet Java est un composant côté serveur qui peut générer des données HTML et XML pour la couche de présentation dans une architecture trois tier. De même, les beans orientés message des EJB 2.0, présentés plus loin dans ce livre, sont des composants côté serveur utilisés pour consommer et produire des messages asynchrones. Les composants côté serveur, comme les autres composants, peuvent être achetés et vendus sous forme de morceaux de logiciel exécutables et indépendants. Ils se conforment à un modèle de composants standard et ils peuvent s exécuter sans modification directe sur un serveur qui supporte ce modèle de composants. Les modèles de composants côté serveur supportent souvent la programmation par attributs, qui autorise la modification du comportement du composant pendant son déploiement, sans avoir à changer son code. Selon le modèle de composants, l administrateur du serveur peut déclarer le comportement transactionnel, la sécurité et même la persistance du composant en donnant des valeurs spécifiques à ces attributs. Au fur et à mesure du développement de nouveaux produits et de la modification des procédures opératoires, les composants sur le serveur peuvent être réassemblés, modifiés et étendus afin que le système d entreprise reflète ces changements. Imaginez un système d entreprise comme une collection de composants côté serveur qui modélisent des concepts comme les clients, les produits, les réservations et les entrepôts. Chaque composant est comme une brique de Lego que vous pouvez combiner avec d autres

4 4 Chapitre 1 Introduction composants pour construire une solution d entreprise. Les produits peuvent être stockés dans l entrepôt ou livrés à un client ; un client peut faire une réservation ou acheter un produit. Vous pouvez assembler les composants, les séparer, les utiliser dans différentes combinaisons et changer leurs définitions. Un système d entreprise basé sur des composants côté serveur est fluide car il s est transformé en objets, et il est accessible car les composants peuvent être distribués. Component Transaction Monitors (CTM) Une nouvelle sorte de logiciels appelés des serveurs d applications est récemment apparue afin de gérer la complexité associée au développement de systèmes d entreprise dans le monde internet actuel. Un serveur d applications est souvent constitué de différentes technologies, y compris des serveurs web, des ORB (object request brokers), des MOM (message-oriented middleware), des bases de données et ainsi de suite. Un serveur d applications peut aussi se concentrer sur une technologie, comme les objets distribués. La sophistication des serveurs d applications basés sur les objets distribués est variable. Les plus simples sont les ORB. Ils facilitent la connectivité entre les applications client et les objets distribués. Les ORB permettent aux applications client de localiser et d utiliser facilement des objets distribués. Cependant, les ORB ont souvent montré qu ils n étaient pas adaptés aux environnements à fort volume transactionnel. Ils fournissent une dorsale de communication pour les objets distribués, mais ils ne parviennent pas à fournir le type d infrastructure robuste nécessaire à la prise en charge d un grand nombre d utilisateurs et des tâches critiques. De plus, les ORB offrent un modèle de composants côté serveur plutôt grossier qui fait reposer sur les épaules du développeur toute la charge de la gestion des transactions, de la concurrence, de la persistance et d autres aspects de niveau système. Ces services ne sont pas supportés automatiquement dans un ORB. Les développeurs d applications doivent accéder explicitement à ces services (s ils sont disponibles) ou, dans certains cas, les mettre en œuvre à partir de rien. Début 1999, Anne Manes 2 a inventé le terme component transaction monitor (CTM) pour décrire des serveurs d applications à base d objets distribués plus sophistiqués. Les CTM ont évolué pour devenir un hybride composé des moniteurs TP traditionnels et des technologie ORB. Ils implémentent des modèles de composants côté serveur robustes qui facilitent la création, l utilisation et le déploiement de systèmes d entreprise. Les CTM fournissent une infrastructure qui prend en charge automatiquement les transactions, la distribution des objets, la concurrence, la sécurité, la persistance et la gestion des ressources. Non seulement ils sont capables de gérer un grand nombre d utilisateurs et des tâches critiques, mais leur facilité d utilisation fait qu ils sont aussi adaptés aux petits systèmes. Les CTM représentent l idéal des serveurs d applications. Cette sorte de technologie se nomme aussi OTM (Object Transaction Monitor), serveur transactionnel de composants, serveur de composants distribués et COMware. Ce livre emploie le terme CTM car il inclut les trois caractéristiques clés de cette technologie : l utilisation d un modèle de composants, le ciblage sur une gestion transactionnelle et les ressources et la gestion de service généralement associées aux moniteurs. 2. À l époque où madame Manes a inventé ce terme, elle travaillait pour Patricia Seybold Group sous le nom de Anne Thomas. Madame Manes est maintenant directrice de la stratégie industrielle chez Sun Microsystems dans la division Sun Software.

5 Définition des Enterprise JavaBeans 5 Définition des Enterprise JavaBeans Voici la définition des Enterprise JavaBeans donnée par Sun Microsystems : L architecture des Enterprise JavaBeans est une architecture de composants pour le développement et le déploiement d applications d entreprise distribuées basées sur des composants. Les applications écrites en utilisant l architecture des Enterprise JavaBeans sont évolutives, transactionnelles et sûres. Ces applications peuvent être écrites une fois, puis déployées sur toute plate-forme serveur qui supporte la spécification des Enterprise JavaBeans. 3 Oh là là! C est ainsi que Sun a l habitude de définir ses technologies Java. Avez-vous déjà lu la définition du langage Java lui-même? Elle est à peu près deux fois plus longue. Voici notre définition, plus courte, des EJB : Les Enterprise JavaBeans sont un modèle de composants côté serveur standard pour les CTM. Nous avons déjà brièvement préparé le terrain pour cette définition en définissant les termes «objets distribués», «composants côté serveur» et «CTM». Afin de vous donner les bases solides et complètes pour étudier les Enterprise JavaBeans, ce chapitre va maintenant s étendre sur ces définitions. Si vous comprenez déjà parfaitement les objets distribués, les moniteurs transactionnels, les CTM et les messages asynchrones, n hésitez pas à sauter le reste de ce chapitre pour aller directement au chapitre 2. Architectures à objets distribués Les EJB sont un modèle de composants pour les CTM basés sur les technologies à objets distribués. C est pourquoi, pour comprendre les EJB, vous devez comprendre comment fonctionnent les objets distribués. Les systèmes à objets distribués constituent les bases des architectures trois-tiers modernes. Dans ces architectures, comme le montre la figure 1-1, la logique de présentation réside sur le client (le premier tiers), la logique métier dans le tiers intermédiaire (le deuxième tiers), et les autres ressources, comme la base de données, résident sur le backend (le troisième tiers). Tous les protocoles d objets distribués sont construits sur la même architecture de base conçue de telle sorte qu un objet présent sur un ordinateur soit vu comme résidant sur un ordinateur différent. Les architectures à objets distribués sont basées sur une couche de communication réseau relativement simple. Il y a principalement trois parties dans cette architecture : l objet métier, le squelette et le stub. L objet métier réside dans le tiers intermédiaire. Il s agit d une instance d un objet qui modélise l état et la logique métier d un concept du monde réel, comme une personne, une commande ou un compte. Chaque classe d objet métier possède ses classes stub et squelette correspondantes, construites spécialement pour ce type d objet métier. Par exemple, un objet métier distribué appelé Personne aura les classes correspondantes 3. Enterprise JavaBeans Specification, v1.1, de Sun Microsystems, Copyright 1999 par Sun Microsystems, Inc.

6 6 Chapitre 1 Introduction Figure 1-1. Architecture trois-tiers Personne_Stub et Personne_Skeleton. Comme le montre la figure 1-2, l objet métier et le squelette résident dans le tiers intermédiaire, alors que le stub se trouve sur le client. Le stub et le squelette ont pour charge de montrer l objet métier, qui vit dans le tiers intermédiaire, comme s il s exécutait localement sur la machine cliente. Cela se fait au travers d une forme de protocole d invocation de méthode distante (RMI remote method invocation). Un protocole RMI est utilisé pour communiquer les invocations de méthode sur un réseau. CORBA, Java RMI et Microsoft.NET utilisent tous leur propre protocole RMI. 4 Chaque instance de l objet métier dans le tiers intermédiaire est enveloppé par une instance de sa classe squelette. Le squelette est lié à un port et une adresse IP, il attend des requêtes venant du stub. Le stub réside sur la machine cliente et il est connecté au squelette via le réseau. Le stub agit comme un représentant de l objet métier pour le client et il a en charge la communication des requêtes à l objet métier au travers du squelette. La figure 1-2 illustre le processus de communication d une invocation de méthode allant du client à l objet serveur, puis revenant au client. Le stub cache au client les détails de communication spécifiques au protocole RMI, et le squelette les cache à la classe d implémentation. L objet métier implémente une interface publique déclarant ses méthodes métier. Le stub implémente la même interface que l objet, mais les méthodes du stub ne contiennent pas la logique métier. À la place, elles implémentent les opérations réseau nécessaires à la redirection des requêtes vers l objet métier et elles reçoivent les résultats. Quand un client invoque une méthode métier sur le stub, la requête est envoyée sur le réseau en convertissant en un flot de données le nom de la méthode invoquée et les va- 4. L acronyme RMI n est pas spécifique à Java RMI. Cette section emploie le terme RMI pour décrire les protocoles d objets distribués de façon générale. Java RMI est la version pour le langage Java du protocole d objets distribués.

7 Architectures à objets distribués 7 leurs passées en paramètre, jusqu au squelette. Quand le squelette reçoit le flot entrant, il l analyse afin de déterminer la méthode invoquée, puis il invoque la méthode correspondante sur l objet métier. Toute valeur retournée par la méthode invoquée sur l objet métier est convertie en un flot renvoyé au stub par le squelette. Le stub retourne ensuite la valeur à l application client comme s il avait appliqué la logique métier localement. Écrire votre objet distribué Figure 1-2. Boucle RMI La meilleure façon d illustrer le fonctionnement des objets distribués est de vous montrer comment en implémenter un vous-même, avec votre propre protocole d objets distribués. Vous pourrez ainsi apprécier ce qu un véritable protocole d objets distribués comme CORBA réalise. Les systèmes d objets distribués comme DCOM, CORBA et Java RMI sont cependant bien plus complexes et robustes que le simple exemple que nous allons développer. Notre système d objets distribués ne sert que d illustration ; ce n est pas une véritable technologie, pas plus qu il ne fait partie des Enterprise JavaBeans. L objectif est de vous aider à comprendre le fonctionnement d un système d objets distribués plus sophistiqué. Voici un objet distribué très simple appelé PersonServer implémentant l interface Person. L interface Person offre deux méthodes adaptées au concept d un objet métier représentant une personne : getage() et getname(). Dans une application réelle, nous définirions certainement bien plus de comportements pour l objet métier Person, mais ces deux méthodes sont bien suffisantes pour notre exemple : public interface Person { public int getage() throws Throwable; public String getname() throws Throwable; L implémentation de cette interface, PersonServer, ne contient rien de surprenant. Elle définit la logique métier et l état d une Person : public class PersonServer implements Person { int age; String name;

8 8 Chapitre 1 Introduction public PersonServer(String name, int age){ this.age = age; this.name = name; public int getage(){ return age; public String getname(){ return name; Nous avons maintenant besoin de rendre PersonServer accessible par un client distant. C est le travail de Person_Skeleton et Person_Stub. L interface Person décrit le concept d une personne indépendamment de l implémentation. PersonServer et Person_Stub implémentent tous deux l interface de Person car ils sont supposés supporter le concept d une personne. PersonServer implémente l interface afin de fournir la logique métier et l état ; Person_Stub implémente l interface afin de ressembler à un objet métier Person du point de vue du client et relayer les requêtes au squelette, qui à son tour les enverra à l objet lui-même. Voici à quoi ressemble un stub : import java.io.objectoutputstream; import java.io.objectinputstream; import java.net.socket; public class Person_Stub implements Person { Socket socket; public Person_Stub() throws Throwable { /* Créer une connexion réseau au squelette. Utiliser "localhost" ou l adresse IP du squelette s il se trouve sur une machine différente. */ socket = new Socket("localhost",9000); public int getage() throws Throwable { // Quand cette méthode est invoquée, convertir en flot de données // le nom de la méthode pour le squelette. ObjectOutputStream outstream = new ObjectOutputStream(socket.getOutputStream()); outstream.writeobject("age"); outstream.flush(); ObjectInputStream instream = new ObjectInputStream(socket.getInputStream()); return instream.readint(); public String getname() throws Throwable { // Quand cette méthode est invoquée, convertir en flot de données // le nom de la méthode pour le squelette. ObjectOutputStream outstream = new ObjectOutputStream(socket.getOutputStream()); outstream.writeobject("name");

9 Architectures à objets distribués 9 outstream.flush(); ObjectInputStream instream = new ObjectInputStream(socket.getInputStream()); return (String)inStream.readObject(); Quand une méthode de Person_Stub est invoquée, un jeton String est créé et envoyé par flot au squelette. Ce jeton identifie la méthode invoquée sur le stub. Le squelette analyse le jeton d identification de méthode, invoque la méthode correspondante sur l objet métier et retourne le résultat dans un flot. Quand le stub lit la réponse du squelette, il analyse la valeur et la retourne au client. Du point de vue du client, le stub a traité la requête localement. Examinons maintenant le squelette : import java.io.objectoutputstream; import java.io.objectinputstream; import java.net.socket; import java.net.serversocket; public class Person_Skeleton extends Thread { PersonServer myserver; public Person_Skeleton(PersonServer server){ // Obtenir une référence à l objet métier enveloppé par ce // squelette. this.myserver = server; public void run(){ try { // Créer une socket serveur sur le port ServerSocket serversocket = new ServerSocket(9000); // Attendre et obtenir une connexion par socket du stub. Socket socket = serversocket.accept(); while (socket!= null){ // Créer un flot entrant afin de recevoir les requêtes du // stub. ObjectInputStream instream = new ObjectInputStream(socket.getInputStream()); // Lire la requête suivante du stub. Bloquer jusqu à ce // que la requête soit envoyée. String method = (String)inStream.readObject(); // Déterminer la méthode invoquée. if (method.equals("age")){ // Invoquer la méthode sur l objet serveur. int age = myserver.getage(); // Créer un flot de sortie pour retourner les valeurs // au stub. ObjectOutputStream outstream = new ObjectOutputStream(socket.getOutputStream()); // Retourner les résultats au stub. outstream.writeint(age); outstream.flush();

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 38 NFP111 Systèmes et Applications Réparties Cours 11 - Les Enterprise Java Beans (Introduction aux Enterprise Claude Duvallet Université du Havre UFR Sciences

Plus en détail

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 16 NFP111 Systèmes et Applications Réparties Cours 10 - Les Enterprise Java Beans ( aux serveurs ) Claude Duvallet Université du Havre UFR Sciences et Techniques

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/54 Ces transparents, ainsi que les énoncés

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

Les serveurs applicatifs et les architectures Java

Les serveurs applicatifs et les architectures Java 03 Lucas Part 02 Page 179 Lundi, 20. août 2001 2:58 14 Chapitre 15 Les serveurs applicatifs et les architectures Java Nous avons vu jusqu ici, dans les chapitres précédents, que les utilisateurs accèdent

Plus en détail

Les serveurs d applications :une introduction

Les serveurs d applications :une introduction Les serveurs d applications : une introduction Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX Claude.Duvallet@gmail.com Octobre 2006 Plan de la présentation

Plus en détail

Cours Serveurs d application. et Java avancé. Introduction au cours Serveurs d application. et Java avancé. Prérequis / Objectifs.

Cours Serveurs d application. et Java avancé. Introduction au cours Serveurs d application. et Java avancé. Prérequis / Objectifs. Cours Serveurs d application et Java avancé Introduction au cours Serveurs d application et Java avancé ITU Université de Nice Richard Grin Version O 1.0.1 12/4/14 20 h de cours et TPs Richard Grin, université

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

JEE - Cours et TP. Mickaël Montassier. 15 février 2007. Institut Universitaire de Technologie Département Informatique

JEE - Cours et TP. Mickaël Montassier. 15 février 2007. Institut Universitaire de Technologie Département Informatique et TP Institut Universitaire de Technologie Département Informatique 15 février 2007 J2EE? J2EE : Java 2 Enterprise Edition Norme prosposée par SUN visant à définir un standard de développement d applications

Plus en détail

SOA et Services Web. 23 octobre 2011. SOA: Concepts de base

SOA et Services Web. 23 octobre 2011. SOA: Concepts de base SOA et Services Web 23 octobre 2011 1 SOA: Concepts de base 2 Du client serveur à la SOA N est Nest pas une démarche entièrement nouvelle: années 1990 avec les solutions C/S Besoins d ouverture et d interopérabilité

Plus en détail

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean. Plan du cours 2 Introduction générale : fondamentaux : les fondamentaux Michel Buffa (buffa@unice.fr), UNSA 2002, modifié par Richard Grin (version 1.1, 21/11/11), avec emprunts aux supports de Maxime

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

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

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

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

Architectures à composants

Architectures à composants Interaction requête/réponse Architectures à composants!communication par requête/réponse client requête réponse serveur Gaël Thomas gael.thomas@lip6.fr Université Pierre et Marie Curie Master Informatique

Plus en détail

Java pour le Web. Cours Java - F. Michel

Java pour le Web. Cours Java - F. Michel Java pour le Web Cours Java - F. Michel Introduction à JEE 6 (ex J2EE) Historique Qu'est-ce que JEE JEE : Java Entreprise Edition (ex J2EE) 1. Une technologie outils liés au langage Java + des spécifications

Plus en détail

RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005

RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005 Oussama ELKACHOINDI Wajdi MEHENNI RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005 Sommaire I. Préliminaire : Notice d exécution et mode opératoire...4 II. Architecture globale de l application...5

Plus en détail

Solutions de gestion de la sécurité Livre blanc

Solutions de gestion de la sécurité Livre blanc Solutions de gestion de la sécurité Livre blanc L intégration de la gestion des identités et des accès avec l authentification unique Objectif : Renforcer la politique de sécurité et améliorer la productivité

Plus en détail

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles Types d applications pour la persistance Université de Nice Sophia-Antipolis Version 0.9 28/8/07 Richard Grin Toutes les applications n ont pas une complexité qui nécessite une architecture n- tiers Ce

Plus en détail

Présentation du PL/SQL

Présentation du PL/SQL I Présentation du PL/ Copyright Oracle Corporation, 1998. All rights reserved. Objectifs du Cours A la fin de ce chapitre, vous saurez : Décrire l intéret du PL/ Décrire l utilisation du PL/ pour le développeur

Plus en détail

Architecture Orientée Service, JSON et API REST

Architecture Orientée Service, JSON et API REST UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API

Plus en dé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

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

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

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

Plus en détail

PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES

PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES DÉCOUVREZ DES POSSIBILITÉS ILLIMITÉES GRÂCE A L INTÉGRATION À DES SYSTÈMES D ENTREPRISE EXISTANTS FONCTIONNALITÉS Connectivité des systèmes

Plus en détail

Architecture Logicielle

Architecture Logicielle Architecture Logicielle Les applications d'entreprise exemple : La technologie JEE Année universitaire 2013/2014 Semestre 1 Introduction Une application d'entreprise a généralement les caractéristiques

Plus en détail

RAPPORT DE CONCEPTION UML :

RAPPORT DE CONCEPTION UML : Carlo Abi Chahine Sylvain Archenault Yves Houpert Martine Wang RAPPORT DE CONCEPTION UML : Bamboo Ch@t Projet GM4 Juin 2006 Table des matières 1 Introduction 2 2 Présentation du logiciel 3 2.1 Précisions

Plus en détail

Les architectures N-tiers

Les architectures N-tiers Les architectures N-tiers 1 SOMMAIRE DU COURS XML ET LES ARCHITECTURES N-TIER Introduction aux architectures N-tier Serveurs d applications Déploiement d applications J2EE Tiers applicatif : servlets Tiers

Plus en détail

Les Enterprise JavaBeans

Les Enterprise JavaBeans Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX Claude.Duvallet@gmail.com http://litis.univ-lehavre.fr/ duvallet/ Claude Duvallet 1/228

Plus en détail

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application Architecture Multi-Tier Traditionnellement une application informatique est un programme exécutable sur une machine qui représente la logique de traitement des données manipulées par l application. Ces

Plus en détail

Tour d horizon de Java EE 6

Tour d horizon de Java EE 6 1 Tour d horizon de Java EE 6 De nos jours, les entreprises évoluent dans une compétition à l échelle mondiale. Elles ont besoin pour résoudre leurs besoins métiers d applications qui deviennent de plus

Plus en détail

Les architectures I*Net. Première approche

Les architectures I*Net. Première approche 1 Les architectures I*Net Première approche Les architectures I*Net 2 L histoire d Internet De l architecture Mainframe à l architecture I*net J2EE et les architectures I*net 3 L histoire d Internet L

Plus en détail

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

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

Plus en détail

Technologies du Multimédia et du Web

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

Plus en détail

Java EE Approfondi - Cours 2. Cours de 2 e année ingénieur Spécialisation «Génie Informatique»

Java EE Approfondi - Cours 2. Cours de 2 e année ingénieur Spécialisation «Génie Informatique» Java EE Approfondi - Cours 2 Cours de 2 e année ingénieur Spécialisation «Génie Informatique» Présentation Lier l'orienté objet et la base de données relationnelle peut être lourd et consommateur en temps.

Plus en détail

Modèle Client-Serveur Partage du serveur entre clients

Modèle Client-Serveur Partage du serveur entre clients Modèle Client-Serveur Partage du serveur entre clients Un serveur peut servir plusieurs clients Vu d un client particulier client requête réponse serveur Vu du serveur Gestion des requêtes (priorité) Exécution

Plus en détail

Cours client-serveur Web : Java et RMI (Remote Method Invocation)

Cours client-serveur Web : Java et RMI (Remote Method Invocation) Cours client-serveur Web : Java et RMI (Remote Method Invocation) 1 Java: Rappel sur les threads Cycle de vie d un thread (1) Né -> prêt appel de la méthode start du thread Prêt Exécution Distribution

Plus en détail

Exécution des applications réparties

Exécution des applications réparties Exécution des applications réparties Programmation des Applications Réparties Olivier Flauzac URCA Master STIC-Informatique première année Olivier Flauzac (URCA) PAR : Exécution des applications réparties

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

Architecture des systèmes d information répartis

Architecture des systèmes d information répartis Architecture des systèmes d information répartis Cours 2 : servlets et BD, EJB Sorina Ionica 1 JDBC Architecture multicouche J2EE Couche client Conteneur d'applet Applet Couche Web Conteneur Web J2EE Couche

Plus en détail

Guillaume MONTAVON Benoît MEILHAC. Rapport Technique du projet. Gestionnaire de tâches pour Android

Guillaume MONTAVON Benoît MEILHAC. Rapport Technique du projet. Gestionnaire de tâches pour Android Guillaume MONTAVON Benoît MEILHAC Rapport Technique du projet Gestionnaire de tâches pour Android Sommaire 1. Introduction... 3 2. Outils utilisés... 3 2.1. Android SDK... 3 2.2. Android dans Eclipse...

Plus en détail

Performance de la réplication de données Avril 2008. IBM InfoSphere Change Data Capture : Réplication de données hautement performante

Performance de la réplication de données Avril 2008. IBM InfoSphere Change Data Capture : Réplication de données hautement performante Avril 2008 IBM Change Data Capture : Réplication de données hautement performante Page 2 Le saviez-vous? Plus de 500 clients utilisent IBM Change Data Capture pour résoudre de multiples problématiques

Plus en détail

RICM 4 ème année 12/1/2012

RICM 4 ème année 12/1/2012 RICM 4 ème année 12/1/2012 Examen de Systèmes Répartis Durée : 2h, Documents autorisés à l exception des livres. Le barème est indicatif. Partie A Applications Web Question 1. Dans un répertoire contenant

Plus en détail

Architecture des systèmes d information

Architecture des systèmes d information Architecture des systèmes d information Table des matières 1 La décennie 70 1 2 Le modèle relationnel (les années 80) 1 3 Enrichissement du relationnel (les années 80/90) 2 4 Système d informations (les

Plus en détail

Sujet Projets 2 nd Semestre

Sujet Projets 2 nd Semestre Sujet Projets 2 nd Semestre Seuls les appels systèmes vus en cours sont autorisés. L usage d autres fonctions doit impérativement être validé par l enseignant. La date d ouverture pour l assignation de

Plus en détail

Java EE. Grégory Cuellar, Julien Goullon. 1 er octobre 2007. gregory.cuellar@bull.net. julien.goullon@9business.fr

Java EE. Grégory Cuellar, Julien Goullon. 1 er octobre 2007. gregory.cuellar@bull.net. julien.goullon@9business.fr Grégory Cuellar Julien Goullon gregory.cuellar@bull.net julien.goullon@9business.fr 1 er octobre 2007 1 Généralité 2 / 54 Pourquoi? Historique Les alternatives Les composants 2 Architecture n-tiers 3 JEE

Plus en détail

Le modèle client-serveur

Le modèle client-serveur Le modèle client-serveur Olivier Aubert 1/24 Sources http://www.info.uqam.ca/~obaid/inf4481/a01/plan.htm 2/24 Historique architecture centralisée terminaux passifs (un seul OS, systèmes propriétaires)

Plus en détail

Le client/serveur repose sur une communication d égal à égal entre les applications.

Le client/serveur repose sur une communication d égal à égal entre les applications. Table des matières LES PRINCIPES DE BASE... 1 Présentation distribuée-revamping...2 Présentation distante...3 Traitements distribués...3 données distantes-rd...4 données distribuées-rda distribué...4 L'ARCHITECTURE

Plus en détail

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information. PACBASE «Interrogez le passé, il répondra présent.». Le Module e-business Les entreprises doivent aujourd hui relever un triple défi. D une part, elles ne peuvent faire table rase de la richesse contenue

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

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

Advanced Software Engineering

Advanced Software Engineering Advanced Software Engineering Prof. J. Pasquier-Rocha Presentation Professeur: Jacques Pasquier-Rocha Jacques.Pasquier@unifr.ch http://diuf.unifr.ch/~pasquier Assistants: Patrik Fuhrer Patrik.Fuhrer@unifr.ch

Plus en détail

Architectures web pour la gestion de données

Architectures web pour la gestion de données Architectures web pour la gestion de données Dan VODISLAV Université de Cergy-Pontoise Plan Le Web Intégration de données Architectures distribuées Page 2 Le Web Internet = réseau physique d'ordinateurs

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

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

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

Modèle spagetthi et solution EAI

Modèle spagetthi et solution EAI EAI Définition L'EAI est une notion ancienne mais toujours d'actualité. En effet, le besoin de faire communiquer des applications développées à des moments différents, dans des technologies différentes

Plus en détail

WWW - Intérêts du Web

WWW - Intérêts du Web WWW - Intérêts du Web client universel facilité d'emploi standards ouverts intégration des autres services Internet extensibilité du système faibles coûts logiciel et réseau utilisation au sein d'une entreprise

Plus en détail

Architecture des Systèmes d'information

Architecture des Systèmes d'information Architecture des Systèmes d'information Cours "Réseaux et systèmes répartis" NFP 214 par Jacques LAFORGUE (jacques.laforgue@neuf.fr) version du 23/10/2009 slide numéro 1 Définition d'un Système d'information

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

LANGAGES & DéVELOPPEMENT. Une équipe à vos côtés pour toutes vos montées en compétences

LANGAGES & DéVELOPPEMENT. Une équipe à vos côtés pour toutes vos montées en compétences LANGAGES & DéVELOPPEMENT Une équipe à vos côtés pour toutes vos montées en compétences ASP.NET OPTION VB.NET OU C# 5 jours Permettre aux participants de mieux appréhender ce qu est la programmation pour

Plus en détail

FileMaker Pro 13. Utilisation d une Connexion Bureau à distance avec FileMaker Pro 13

FileMaker Pro 13. Utilisation d une Connexion Bureau à distance avec FileMaker Pro 13 FileMaker Pro 13 Utilisation d une Connexion Bureau à distance avec FileMaker Pro 13 2007-2013 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054

Plus en détail

Implementing a simple RMI Application over the. Internet. (using. and

Implementing a simple RMI Application over the. Internet. (using. and Implementing a simple RMI Application over the (using and Internet and comparing HTTP tunneling,, RMI Proxy) Plan de l exposé Introduction Problématique HTTP tunneling Comment RMI «tunnelle» des messages

Plus en détail

Qu est-ce que ArcGIS?

Qu est-ce que ArcGIS? 2 Qu est-ce que ArcGIS? LE SIG ÉVOLUE Depuis de nombreuses années, la technologie SIG améliore la communication, la collaboration et la prise de décision, la gestion des ressources et des infrastructures,

Plus en détail

Familiarisation avec Eclipse / Netbeans

Familiarisation avec Eclipse / Netbeans Institut Galilée LEE Année 011-01 Master T.P. 0 Familiarisation avec Eclipse / Netbeans Lien important contenant le pdf du cours et du TP, et ensuite des sources : http://www-lipn.univ-paris13.fr/~fouquere/mpls

Plus en détail

Bases de données et environnements distribués Chapitre I : Objets distribués, concepts fondamentaux

Bases de données et environnements distribués Chapitre I : Objets distribués, concepts fondamentaux Bases de données et environnements distribués Chapitre I : Objets distribués, concepts fondamentaux Eric Leclercq Département IEM / UB 10/2005 email : Eric.Leclercq@u-bourgogne.fr http://ludique.u-bourgogne.fr/~leclercq

Plus en détail

Construction d Applications Réparties

Construction d Applications Réparties Construction d Applications Réparties Jean-Francois Roos LIFL - équipe GOAL USTL - bâtiment M3 Extension - bureau 204 Jean-Francois.Roos@lifl.fr Avril 1 Objectifs du cours Appréhender la conception d applications

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

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 46 NFP111 Systèmes et Applications Réparties Cours 2 - Les appels de procédure distants (Partie 1) Claude Duvallet Université du Havre UFR Sciences et Techniques

Plus en détail

LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1

LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1 LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1 SAS Cost and Profitability Management, également appelé CPM (ou C&P), est le nouveau nom de la solution SAS Activity-Based Management. Cette version

Plus en détail

JDBC. Daniel Tschirhart : Programmation Java V1.35 1.1

JDBC. Daniel Tschirhart : Programmation Java V1.35 1.1 JDBC Daniel Tschirhart : Programmation Java V1.35 1.1 JDBC JDBC est l'acronyme de Java DataBase Connectivity et désigne une API définie par Sun pour permettre un accès aux bases de données avec Java Accès

Plus en détail

Qu'est-ce qu'un Web Service?

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

Plus en détail

Présentation de la solution SAP SAP Technology SAP Afaria. La mobilité d entreprise comme vecteur d avantage concurrentiel

Présentation de la solution SAP SAP Technology SAP Afaria. La mobilité d entreprise comme vecteur d avantage concurrentiel Présentation de la solution SAP SAP Technology SAP Afaria La mobilité d entreprise comme vecteur d avantage concurrentiel des périphériques et des applications des périphériques et des applications La

Plus en détail

Programmation Java. Madalina Croitoru

Programmation Java. Madalina Croitoru Programmation Java Madalina Croitoru Madalina Croitoru 2002 2006 Univ. Aberdeen 2006 2008 Univ. Southampton Depuis 2008 Univ. Montpellier II Contact: Page web: www.lirmm.fr/~croitoru/teaching.html Email:

Plus en détail

IBM Lotus Domino Designer 6.5.1

IBM Lotus Domino Designer 6.5.1 Créez rapidement des applications multi-plateformes pour automatiser les processus métier et améliorer l efficacité de votre workflow IBM Lotus Domino Designer 6.5.1 Créez, testez et déployez rapidement

Plus en détail

Applications Internet riches fonctionnant en mode connecté et déconnecté

Applications Internet riches fonctionnant en mode connecté et déconnecté Applications Internet riches fonctionnant en mode connecté et déconnecté Success story client : développement d applications Web avec mode déconnecté Depuis quatre ans, les applications de guichet pour

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

Programmation Avancée pour le Web

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

Plus en détail

Architectures et Web

Architectures et Web Architectures et Web Niveaux d'abstraction d'une application En règle générale, une application est découpée en 3 niveaux d'abstraction : La couche présentation ou IHM (Interface Homme/Machine) gère les

Plus en détail

Dr. Djamel Benmerzoug. Email : djamel.benmerzoug@univ-constantine2.dz

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

Plus en détail

Analyse des besoins logiciels

Analyse des besoins logiciels Analyse des besoins logiciels Encadrement et supervision Annie Danzart Jean-Claude Moissinac Equipe de développement Mohamed Anouar Benaissa anouar@benaissa.net Anthony Rabiaza rabiaza@enst.fr Déva Pajaniaye

Plus en détail

Maxima et la programmation en parallèle

Maxima et la programmation en parallèle Maxima et la programmation en parallèle Danielle Léger Département de mathématiques et d informatique Université Laurentienne (Sudbury, Ontario) La présence de l ordinateur constitue une réalité palpable

Plus en détail

FileMaker Pro 12. Utilisation d une Connexion Bureau à distance avec FileMaker Pro 12

FileMaker Pro 12. Utilisation d une Connexion Bureau à distance avec FileMaker Pro 12 FileMaker Pro 12 Utilisation d une Connexion Bureau à distance avec FileMaker Pro 12 2007-2012 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054

Plus en détail

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France Développement d applications Internet et réseaux avec LabVIEW Alexandre STANURSKI National Instruments France Quelles sont les possibilités? Publication de données Génération de rapports et de documents

Plus en détail

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

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

Plus en détail

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

Persistance en Php. Note : les problèmes d accès concurrents, de sécurité et de login sont laissés de côté.

Persistance en Php. Note : les problèmes d accès concurrents, de sécurité et de login sont laissés de côté. Persistance en Php Objectif : faire un site pour gérer des articles par catégorie. Chaque catégorie a un nom, chaque catégorie est constitué d articles (titre, auteur, texte), un article est dans une seule

Plus en détail

Programmation d applications distribuées

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

Plus en détail

Technologies distribuées

Technologies distribuées Technologies distribuées Java EE 5 Introduction! L entreprise et le Java EE Définition Les de type EJB Les de type services 1 2 Introduction! Compétences acquises " Compréhension " Interventions " Affranchir

Plus en détail

Introduction Les architectes Les utilisateurs expérimentés Les créateurs de contenu Les chefs de projet Les documentalistes

Introduction Les architectes Les utilisateurs expérimentés Les créateurs de contenu Les chefs de projet Les documentalistes Introduction Bienvenue dans le Kit d administration Microsoft Office SharePoint Server 2007! Si vous lisez cette introduction, il y a de grandes chances pour que vous soyez intéressé par l administration

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

VisualAge Pacbase 3.0 et WebSphere

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

Plus en détail

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

Travaux pratiques. Protocoles de la couche transport et de la couche applications

Travaux pratiques. Protocoles de la couche transport et de la couche applications Travaux pratiques Protocoles de la couche transport et de la couche applications Objectif Ce laboratoire se veut une introduction aux protocoles de la couche transport et de la couche application du modèle

Plus en détail

Référence Etnic Architecture des applications

Référence Etnic Architecture des applications Référence Etnic Architecture des applications Table des matières 1. Introduction... 2 2. Architecture... 2 2.1 Démarche générale... 2 2.2 Modèle d architecture... 3 2.3 Découpe d une architecture applicative...

Plus en détail

Première étape : Le modèle client/serveur avec le protocole TCP (client unique)

Première étape : Le modèle client/serveur avec le protocole TCP (client unique) École de technologie supérieure Responsable du cours : Hassan Zeino Département de génie logiciel et des TI Chargés de laboratoire : Fatna Belqasmi (A-3326) Session : Automne 2010 LOG610 - RÉSEAUX DE TELECOMMUNICATION

Plus en détail

Spécification du profil UML d assemblage cible EJB (version 1)

Spécification du profil UML d assemblage cible EJB (version 1) Spécification du profil UML d assemblage cible EJB (version 1) Auteur : Projet ACCORD (Assemblage de composants par contrats en environnement ouvert et réparti) Référence : Livrable 2.2 Date : 31 mai 2002

Plus en détail

La reconquête de vos marges de manœuvre

La reconquête de vos marges de manœuvre La reconquête de vos marges de manœuvre Libérez vos applications critiques Bull ouvre de nouvelles portes à votre patrimoine applicatif. Bull LiberTP fait passer simplement vos applications transactionnelles

Plus en détail