Informatique Repartie
|
|
- Maurice Turgeon
- il y a 6 ans
- Total affichages :
Transcription
1 Informatique Repartie Chapitre 5 : Web Services REST Cecilia Zanni Merk cecilia.zanni merk@insa rouen.fr Bureau BO B R1 04 Basé sur le cours de M Alexandre Pauchet, INSA Rouen Normandie, 2016
2 Références Le cours de M Pauchet sur Moodle Architectures réparties en Java de Annick Fron ISBN Ed Dunod 2
3 Références et cours sur le Web The Java EE 6 tutorial Cours Sun T_Carol_(1).odp Cours M. Baron JSR
4 Architectures : Rappel Années 70 : architectures Mainframe (1 tier) Années 80 : architectures 2 tiers (BD) Fin des années 80 : architectures 3 tiers (RPC) Années 90 : architectures 3 tiers Objet (RMI/Corba) Années 00 : architectures orientées services (Web Services) Fin des années 00 : architectures orientées ressources (RESTful) 4
5 Web Services : Rappel Sur le plan conceptuel, un service est une composante logicielle fournie via un point d attache (endpoint) accessible au réseau. Sur le plan technique, les services Web peuvent être mis en œuvre de diverses façons. services Web «étendus» («big» dans la littérature), implémentés avec JAX WS XML, SOAP, WSDL services Web «RESTful», implémentés avec JAX RS RESTful = Representational State Transfer Mieux intégrés avec HTTP que SOAP, ils n ont pas besoin de messages XML ou de définitions WSDL 5
6 Cours de Mickael Baron «Comprendre le style d architecture REST» 6
7 SOAP REST Avantages Inconvénients Avantages Inconvénients Standardisé Performances (enveloppe SOAP supplémentaire) Simplicité de mise en œuvre Sécurité restreinte par l emploi des méthodes HTTP Interopérabilité Complexité Lisibilité par l humain Sécurité Outillé Cible l appel du service Evolutivité Repose sur les principes du Web Représentations multiples Cible uniquement l appel de ressource 7
8 Quand utiliser les WS RESTful? Les services REST ne gardent pas d état Une infrastructure de mise en cache peut être exploitée en fonction des performances. Le producteur et le consommateur des services ont une compréhension mutuelle du contexte et du contenu transmis. La bande passante est particulièrement importante et doit être limitée. La prestation de services Web ou leur agrégation dans des sites Web existants peut être activée facilement avec un style RESTful. 8
9 Les services web RESTful 9
10 Description REST (Representational State Transfer) est un style architectural qui spécifie des contraintes, telles qu une interface uniforme, qui permettent aux services de travailler le mieux sur le Web. Dans le style architectural REST, les données et les fonctionnalités sont considérées comme des ressources et sont accessibles à l'aide d'uri (Uniform Resource Identifiers) Les ressources sont exploitées en utilisant un ensemble d'opérations simples et bien définies, sur un protocole de communication sans état, généralement HTTP Les clients et les serveurs échangent des représentations de ressources en utilisant une interface et un protocole normalisés. 10
11 Caractéristiques Identification de ressources via des URIs : Le service web expose un ensemble de ressources (via leur URI) pour identifier les cibles de l interaction avec leur clients Une interface uniforme : Les ressources sont manipulés exclusivement avec 4 méthodes PUT, GET POST et DELETE Des messages auto descriptifs : Les ressources sont séparées de leur représentation (leur contenu peut être obtenu dans divers formats, HTML, XML, texte, PDF, JPEG, JSON, ou d autres) Interactions à états (statful) grâce aux hyperliens : chaque interaction avec une ressource est sans état (les requêtes sont auto contenues, l état est maintenu par la représentation de la ressource). Les interactions à états se basent sur un transfert d état explicit Simplifie le service mais augmente le volume de la communication!! 11
12 Requête REST Ressource (identifiant) Identifiée par une URI Ex : Méthode Elles permettent de manipuler les identifiants Méthodes HTTP : GET, POST, PUT et DELETE Représentation Vue sur l état (requête client/serveur) Ex : XML, JSON 12
13 Ressource et URI Une ressource est un objet ou plusieurs objets auquel les utilisateurs du service peuvent vouloir accéder. Une URI identifie une ressource de manière unique Une ressource peut avoir plusieurs URI et la représentation de la ressource peut évoluer avec le temps Les ressources sont hiérarchiques : une ressource peut être une collection de ressources Exemples /PEL et /1 sont les identifiants primaires d'une même ressource /banque/comptes/bobleponge est une ressource de type collection : tous les comptes de BobLeponge 13
14 Ressource, opération et méthode HTTP Operations Une ressource peut subir 4 opérations (CRUD) : Create (Création), Retrieve (Lecture), Update (Mise a jour), Delete (Suppression) Méthodes HTTP. Chaque opération correspond a une méthode HTTP : Create POST Retrieve GET Update PUT Delete DELETE 14
15 Les requêtes HTTP 15
16 Plus sur les méthodes Les méthodes HTTP sont toujours des verbes en majuscules. GET : Récupère des données d'une ressource. POST : Envoie des données dans une requête, en général, pour l ajouter à la ressource qui apparaît dans l URI de la première ligne PUT : plus restrictif que POST, ne laisse pas le choix au serveur de décider où affecter les données C est pour cela que on parle, en général, de modifications DELETE : pour supprimer la ressource donnée dans l URI 16
17 Les réponses 17
18 Représentations Objectif : fournir les données suivant une représentation pour le client (GET) le serveur (PUT et POST) Les données peuvent être retournées dans différents formats (XML, HTML, JSON, etc.) Les formats des requêtes et des réponses peuvent être différents 18
19 Les codes HTTP Lors de l accès à une ressource, un code numérique est reçu avec le message Selon le code HTTP reçu, l application Les codes HTTP sont toujours client trois chiffres peut décider et sont quoi catégorisés faire après. en Par fonction du chiffre des centaines. exemple si un serveur répond avec un code 500, le client ne pourra pas assigner les données anticipées à une 2xx indique le succès. 3xx redirige le client ailleurs. 4xx indique une erreur de la part du client. 5xx indique une erreur de la part du serveur. variable. Par contre avec un code 200, le client saura que la réponse était bonne et qu il pourra procéder à l interprétation des informations reçues! 19
20 Premiers tests D abord, il nous faut un outil pour l émission de requêtes HTTP Le plugin Poster disponible sous Firefox Curl ( 20
21 Exemple : Google URL Shortener Google URL Shortener est un service de réduction d URL code.google.com/apis/urlshortener/ Actions proposées Réduire une URL en un URL plus courte (POST) Retrouver une URL longue à partir d une URL courte (GET) Afficher les statistiques sur l utilisation d une URL réduite (GET) Service gratuit et proposant une API REST pour le développement Pour utiliser l API, besoin d une clé pour certaines actions 21
22 Réduction d un URL (requête et réponse) Pour réduire l URL Il faut envoyer la requête POST Content-Type: application/json {"longurl": " clé 22
23 Reconstruire une URL réduite Pour reconstruire l URL Il faut envoyer la requête GET Qui devrait donner comme résultat (dans le corps de la réponse) { "kind": "urlshortener#url", "id": " "longurl": " "status": "OK" } 23
24 Google Maps Geocoding API Le géocodage est le processus qui permet de convertir des adresses en coordonnées géographiques (latitude, longitude) Il existe aussi le géocodage inversé /geocoding/intro 24
25 Google Maps Geocoding API Par exemple, our obtenir des informations sur l adresse Place de la Cathédrale à Rouen, il faut envoyer la requête GET n?address=place+de+la+cathédrale,+rouen,+france &sensor=false 25
26 Google Maps Geocoding API 26
27 Tester un service REST avec SoapUI Créer un nouveau projet REST et indiquer l URI SoapUI extrait les arguments de la requête, qu on peut exécuter 27
28 Premier client Java En utilisant les bibliothèques intégrées pour les clients HTTP, pour envoyer des requêtes GET et POST java.net.url java.net.httpurlconnection 28
29 Autre client basique (requête POST) 29
30 Autres API REST disponibles à explorer Instagram Gmail GitHub 30
31 JAX RS 31
32 Description JAX RS : Java API for RESTful Web Services Spécification : JSR311 JAX RS est intégré à Java à partir de Java EE 6 Le développement de Services Web REST avec JAX RS s'appuie sur les annotations Java Plusieurs implémentations existent : JERSEY (Oracle, référence), CXF (Apache), RESTEasy (JBoss/WildFly), RESTlet La spécification ne décrit que la partie serveur, la partie client dépend de chaque implémentation 32
33 M. Baron 33
34 Développement Le développement de Services Web avec JAX RS est basé sur des POJO en utilisant des annotations spécifiques à JAX RS Pas de description requise dans des fichiers de configuration Seule la configuration d une Servlet «JAX RS» est requise pour réaliser le pont entre les requêtes HTTP et les classes Java annotées Un Service Web REST est déployé dans une application Web 34
35 Développement Contrairement aux Services Web de type SOAP il n y a pas de possibilité de développer un service REST à partir du fichier de description WADL Seule l approche Bottom / Up est disponible Créer et annoter un POJO Compiler, Déployer et Tester Possibilité d accéder au document WADL Le fichier de description WADL est généré automatiquement par JAX RS Eventuellement, il est possible d utiliser le WADL pour générer le client 35
36 Deux concepts de base Les classes définissant des ressources appelées racine (root resource classes) sont Des POJO Soit annotées Soit comportent au moins une méthode annotée ou un descripteur de méthode de requête, @POST Les méthodes de ressources sont Des méthodes d'une classe de ressource Annotées avec un descripteur de méthode de requête. 36
37 Description annotation s value is a relative URI path indicating where the Java class will be hosted: for example, /helloworld. You can also embed variables in the URIs to make a URI path template. For example, you could ask for the name of a user and pass it to the application as a variable in the URI: /helloworld/{username}. annotation is a request method designator and corresponds to the similarly named HTTP method. The Java method annotated with this request method designator will process HTTP GET requests. The behavior of a resource is determined by the HTTP method to which the resource is responding. annotation is a request method designator and corresponds to the similarly named HTTP method. The Java method annotated with this request method designator will process HTTP POST requests. The behavior of a resource is determined by the HTTP method to which the resource is responding. annotation is a request method designator and corresponds to the similarly named HTTP method. The Java method annotated with this request method designator will process HTTP PUT requests. The behavior of a resource is determined by the HTTP method to which the resource is responding. annotation is a request method designator and corresponds to the similarly named HTTP method. The Java method annotated with this request method designator will process HTTP DELETE requests. The behavior of a resource is determined by the HTTP method to which the resource is responding. annotation is a request method designator and corresponds to the similarly named HTTP method. The Java method annotated with this request method designator will process HTTP HEAD requests. The behavior of a resource is determined by the HTTP method to which the resource is responding. annotation is a type of parameter that you can extract for use in your resource class. URI path parameters are extracted from the request URI, and the parameter names correspond to the URI path template variable names specified in class level annotation. annotation is a type of parameter that you can extract for use in your resource class. Query parameters are extracted from the request URI query parameters. annotation is used to specify the MIME media types of representations a resource can consume that were sent by the client. annotation is used to specify the MIME media types of representations a resource can produce and send back to the client: for example, "text/plain". annotation is used for anything that is of interest to the JAX RS runtime, such as MessageBodyReader and MessageBodyWriter. For HTTP requests, the MessageBodyReader is used to map an HTTP request entity body to method parameters. On the response side, a return value is mapped to an HTTP response entity body by using a MessageBodyWriter. If the application needs to supply additional metadata, such as HTTP headers or a different status code, a method can return a Response that wraps the entity and that can be built using Response.ResponseBuilder. 37
38 Les restos Basé sur le blog de Nicolas Martignole 38
39 Plus sur les ressources Imaginons une application pour lister des restaurants par région, par type de cuisine, par évaluation des utilisateurs Le 1741 à Strasbourg /alsace/bas-rhin/strasbourg/etoile/le1741 Par extension tous les restaurants de Strasbourg /alsace/bas-rhin/strasbourg 39
40 Généralités sur l implémentation JAX RS fonctionnera en tant que servlet embarquée dans un conteneur léger. Concernant les annotations, une ressource sera une classe avec, au moins, une présente sur l une de ses méthodes ou sur la classe. Par exemple une ressource qui représente des Restaurants public class Restaurants {... } 40
41 Généralités sur l implémentation Après compilation et déploiement dans un conteneur de Servlets comme Tomcat, la liste des restaurants sera donc accessible avec une url de ce type: Les annotations suivantes permettront de déclarer les méthodes de L permet de lire les en têtes HTTP 41
42 Généralités sur l implémentation Pour obtenir une uri /restaurants/chinois par exemple il faut ajouter méthode et qu elle soit marquée avec un Path public class public List getlistofchineserestaurants() Pour injecter des paramètres à une public class Restaurants public Restaurant String restaurantname) {... } 42
43 Généralités sur l implémentation Gestion public class Restaurants public Restaurant getrestaurantbyname (@PathParam("name") String public String getphotoforrestaurant (@PathParam("name") String restaurantname) {...} 43
44 Récapitulatif des annotations principales Le serveur est en mode Consommateur ou Producteur en fonction de la méthode HTTP! En serveur (Producer) Chemin vers la ressource adossée à la classe Chemin vers la ressource adossée à la méthode, avec d éventuels paramètres associes Method HTTP GET adossée à la méthode Paramètre adossée au paramètre En "client" pour le serveur (Consumer) Chemin vers la ressource adossée à la classe Méthode HTTP POST adossée à la méthode 44
45 Mise en œuvre 45
46 Développement d un serveur REST Avec JAX RS sur JBoss/WildFly : RESTEasy Propose une gestion de projets par Maven Peut être utilisé dans n'importe quelle application J2EE Intégration facilitée : détection automatique des services 46
47 Maven Maven est un outil de construction de projets (build) open source. Il permet de faciliter et d'automatiser certaines tâches de la gestion d'un projet Java. automatiser certaines tâches : compilation, tests unitaires et déploiement des applications qui composent le projet gérer des dépendances vis à vis des bibliothèques nécessaires au projet générer des documentations concernant le projet Intégration de tests unitaires Tutoriel : Maven in 5 minutes started/maven in fiveminutes.html 47
48 Préparation Créer un nouveau projet web Maven standard mvn archetype:generate -DgroupId=test -DartifactId=HelloWorldRest -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false Le fichier pom.xml est le cœur de la configuration des projets Maven Il faut y déclarer le dépôt public JBoss de Maven et la bibliothèque resteasyjaxrs 48
49 L arborescence d un projet Maven 49
50 Configuration du fichier pom.xml 50
51 Un service REST simple 51
52 Configuration de l application Des informations détaillées dans cette documentation docs/2.2.1.ga/userguide/html/in stallation_configuration.html 52
53 Compiler et déployer mvn clean install cp target/testid.war $WILDFLY_HOME/standalone/deployments 53
54 Un client Nous réutilisons le client basique précédent 54
55 Une autre possibilité Dans l exemple précédent, nous avons déclaré le service REST avec l écouter ResteasyBootstrap (voir le web.xml) Une autre possibilité est de créer une classe qui étend javax.ws.rs.core.application, et connecter notre service REST à la servlet RestEasy manuellement. 55
56 La classe de lien avec la servlet RestEasy 56
57 Nouvelle configuration 57
58 Un exemple un peu plus complexe Gestion des visiteurs d une boutique 58
59 Implémentation du code du domaine Dans une classe simple, un POJO, Visiteur, qui possède seulement un nom et un On va lui rajouter des annotations JAXB pour permettre une sérialisation/désérialisation transparente Java Architecture for XML Binding (JAXB) se/index html 59
60 Implémentation du code du domaine On définit aussi un conteneur pour les listes de visiteurs, Visiteurs 60
61 Mise en œuvre du serveur Le serveur va utiliser deux classes La première fera le lien avec les méthodes HTTP La deuxième fera le lien entre l application et la servlet RestEasy La première classe utilise les annotations : spécifie le pattern d URL associé à : Spécifient la méthode HTTP : Spécifie le format attendu en : Spécifie le format attendu en : Spécifie un paramètre de l URL 61
62 La classe de gestion des visiteurs 62
63 La classe de gestion des visiteurs 63
64 La classe de lien avec la servlet RestEasy 64
65 Quelques tests 65
66 Compléments 66
67 Gestion des exceptions Rappel Le protocole HTTP ne permet pas de remonter des exceptions! Solution Le code Status HTTP peut être utilisé comme information Architecture orientée Ressources favoriser la remontée de document pour une consultation par un client web 67
68 Exemple Pour une classe TestExceptions.java 68
69 Arguments et valeurs en retour Rappel : Le serveur est en mode Consommateur ou Producteur en fonction de la méthode HTTP! Le passage par référence et donc les Callback ne sont pas supportés par les Services Web (et donc par les Services REST) Arguments GET : les arguments passés directement dans la requête POST, PUT et DELETE : les arguments sont consommés par le serveur Valeur en retour GET/POST : une valeur en retour est attendue ; précise le type MIME de la valeur en retour Le code Status doit être utilisé 69
70 Bonnes pratiques Privilégier l'utilisation de collections Ex : (GET) annuaire/bob (GET) annuaire/personnes/bob Eviter les arguments explicites Ex : (GET) annuaire/personne/param=bob (GET) annuaire/personnes/bob Eviter les noms de type «fonction» Ex : (POST) annuaire/renommer/bob (POST) annuaire/personnes/bob 70
71 Bonnes pratiques : le fichier WADL Générer le fichier WADL pour notre serveur M. Baron 71
72 Le fichier WADL WADL (Web Application Description Language) est un langage de description XML de services de type REST WADL est une spécification W3C initiée par SUN Description des services par éléments de type Ressource, Méthode, Paramètre, Requête, Réponse L objectif est de pouvoir générer automatiquement les APIs clientes d accès aux services REST Remarques Peu d outils exploitent la description WADL ( Apparu bien plus tard 72
73 Génération du fichier WADL Il faut indiquer explicitement à RestEasy de le faire 73
74 Génération du fichier WADL Il faut indiquer explicitement à RestEasy de le faire 74
75 75
76 Conclusions REST permet d éviter la création de nombreuses servlets Java pour les actions des formulaires web ordinaires La mise en œuvre dans JAX RS est quasiment transparente Il faut toutefois faire attention à bien gérer l idempotence des requêtes afin d éviter les doublons ou les copies 76
4. SERVICES WEB REST 46
4. SERVICES WEB REST 46 REST REST acronyme de REpresentational State Transfert Concept introduit en 2000 dans la thèse de Roy FIELDING Est un style d architecture inspiré de l architecture WEB En 2010,
Plus en détailArchitectures Web Services RESTful
Architectures Web Services RESTful Alexandre Denis Alexandre.Denis@inria.fr Inria Bordeaux Sud-Ouest France ENSEIRB PG306 REST REST Representational State Transfer Roy Fielding (2000) Décollage vers 2006-2007
Plus en détailCOMPRENDRE L ARCHITECTURE DES WEB SERVICES REST. Amosse EDOUARD, Doctorant
COMPRENDRE L ARCHITECTURE DES WEB SERVICES REST Amosse EDOUARD, Doctorant Organisation Cours Magistral 24/11/2014 26/11/2014 01/12/2014 Travaux Dirigés 26/11/2014 28/11/2014 01/11/2014 08/11/2014 Evaluation
Plus en détailApplications et Services WEB: Architecture REST
Applications et : Erick Stattner Laboratoire LAMIA Université des Antilles et de la Guyane France erick.stattner@univ-ag.fr Guadeloupe 2014-2015 Erick Stattner Applications et : 1 / 90 Description du cours
Plus en détailArchitecture Orientée Service, JSON et API REST
UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API
Plus en détailParis Airports - Web API Airports Path finding
Paris Airports - Web API Airports Path finding Hackathon A660 Version Version Date writer Comment 1.0 19/05/2015 Olivier MONGIN Document creation Rédacteur : Olivier.MONGIN@adp.fr Date : 19/05/2015 Approbateur
Plus en détailCours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web»
Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web» Sana Sellami sana.sellami@lsis.org 2014-2015 Plan Partie 1: Introduction aux Services Web (SW) Partie 2: Vers une
Plus en détailMise 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étailIntroduction aux «Services Web»
Introduction aux «Services Web» Sana Sellami sana.sellami@univ-amu.fr 2014-2015 Modalité de contrôle de connaissances Note de contrôle de continu Note projet Evaluation du projet la semaine du 17 novembre
Plus en détailLes Architectures Orientées Services (SOA)
Les Architectures Orientées Services (SOA) Ulrich Duvent Guillaume Ansel Université du Littoral Côte d Opale 50, Rue Ferdinand Buisson BP 699 62228 Calais Cedex Téléphone (33) 03.21.46.36.92 Télécopie
Plus en détailLe Web de Données Dan VODISLAV Université de Cergy-Pontoise Master Informatique M2 Plan
Le Web de Données Dan VODISLAV Université de Cergy-Pontoise Master Informatique M2 Plan RDF sur le Web Micro-formats Micro-données RDFa Vocabulaires communs Dublin Core, FOAF, SKOS Linked Open Data Architecture
Plus en détail27/11/12 Nature. SDK Python et Java pour le développement de services ACCORD Module(s)
Propriétés du Document Source du Document SDK_accords.odt Titre du Document SDK Python et Java pour le développement de services ACCORD Module(s) PyaccordsSDK, JaccordsSDK Responsable Prologue Auteur(s)
Plus en détailOnce the installation is complete, you can delete the temporary Zip files..
Sommaire Installation... 2 After the download... 2 From a CD... 2 Access codes... 2 DirectX Compatibility... 2 Using the program... 2 Structure... 4 Lier une structure à une autre... 4 Personnaliser une
Plus en détailles techniques d'extraction, les formulaires et intégration dans un site WEB
les techniques d'extraction, les formulaires et intégration dans un site WEB Edyta Bellouni MSHS-T, UMS838 Plan L extraction des données pour un site en ligne Architecture et techniques Les différents
Plus en détailPetite définition : Présentation :
Petite définition : Le Web 2.0 est une technologie qui permet la création de réseaux sociaux, de communautés, via divers produits (des sites communautaires, des blogs, des forums, des wiki ), qui vise
Plus en détailTP 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étailOpenPaaS Le réseau social d'entreprise
OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3
Plus en détail1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7
Sommaire 1-Introduction 2 1-1- BPM (Business Process Management)..2 1-2 J-Boss JBPM 2 2-Installation de JBPM 3 2-1 Architecture de JOBSS JBPM 3 2-2 Installation du moteur JBoss JBPM et le serveur d application
Plus en détailWeb 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étailIntroduction à ElasticSearch
Introduction à ElasticSearch Présentée par : Romain Pignolet Lundi 7 Juillet 2014 Sommaire 1 Présentation de Elasticsearch 2 Installation et exemples simples 3 API Rest 4 Comment fonctionne Elasticsearch?
Plus en détailBien architecturer une application REST
Olivier Gutknecht Bien architecturer une application REST Avec la contribution de Jean Zundel Ce livre traite exactement du sujet suivant : comment faire pour que les services web et les programmes qui
Plus en détailApplication Web et J2EE
Application Web et J2EE Servlet, JSP, Persistence, Méthodologie Pierre Gambarotto Département Informatique et Math appli ENSEEIHT Plan Introduction 1 Introduction Objectfis
Plus en détailUtilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008
Introduction Utilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008 Forms 10g permet l utilisation du JAVA côté client et côté application
Plus en détailHow to Login to Career Page
How to Login to Career Page BASF Canada July 2013 To view this instruction manual in French, please scroll down to page 16 1 Job Postings How to Login/Create your Profile/Sign Up for Job Posting Notifications
Plus en détailSécurité des Web Services (SOAP vs REST)
The OWASP Foundation http://www.owasp.org Sécurité des Web Services (SOAP vs REST) Sylvain Maret Principal Consultant / MARET Consulting / @smaret OpenID Switzerland OWASP Switzerland - Geneva Chapter
Plus en détailL accès aux Clouds (Académiques)
L accès aux Clouds (Académiques) C. Loomis, CTO, Co-founder, SixSq Ecole Cumulo NumBio 2015 (Aussois, France) 1-5 juin 2015 Le cloud : pourquoi et comment? 2 Les raisons variées pour utiliser un cloud
Plus en détailTechnologies du Web. Ludovic DENOYER - ludovic.denoyer@lip6.fr. Février 2014 UPMC
Technologies du Web Ludovic DENOYER - ludovic.denoyer@lip6.fr UPMC Février 2014 Ludovic DENOYER - ludovic.denoyer@lip6.fr Technologies du Web Plan Retour sur les BDs Le service Search Un peu plus sur les
Plus en détailArchitecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués
Architecture JEE. Objectifs attendus Serveurs d applications JEE Systèmes distribués Architectures JEE Normes JEE couches logicielles, n-tiers framework JEE et design patterns 2007/02/28 Eric Hébert.eheb@yahoo.fr
Plus en détailJava et les bases de données
Michel Bonjour http://cuiwww.unige.ch/~bonjour CENTRE UNIVERSITAIRE D INFORMATIQUE UNIVERSITE DE GENEVE Plan Introduction JDBC: API SQL pour Java - JDBC, Java, ODBC, SQL - Architecture, interfaces, exemples
Plus en détailArchitectures d'intégration de données
Architectures d'intégration de données Dan VODISLAV Université de Cergy-ontoise Master Informatique M1 Cours IED lan Intégration de données Objectifs, principes, caractéristiques Architectures type d'intégration
Plus en détailInstitut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki
Institut Supérieur de Gestion Cours pour 3 ème LFIG Java Enterprise Edition Introduction Bayoudhi Chaouki 1 Java EE - Objectifs Faciliter le développement de nouvelles applications à base de composants
Plus en détailLe cadre des Web Services Partie 1 : Introduction
Sécurité en ingénierie du Logiciel Le cadre des Web Services Partie 1 : Introduction Alexandre Dulaunoy adulau@foo.be Sécurité en ingénierie du Logiciel p.1/21 Agenda (partie 1) 1/2 Introduction Services
Plus en détailIntégration d'applications à "gros grain" Unité d'intégration : le "service" (interface + contrat)
Motivations Motivations Intégration d'applications à "gros grain" Unité d'intégration : le "service" (interface + contrat) Contraintes Applications conçues indépendamment, sans avoir prévu une intégration
Plus en détailLa persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1
La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1 Plan 1. Généralités sur la persistance des données dans les applications 2. La connection
Plus en détailCedric Dumoulin (C) The Java EE 7 Tutorial http://docs.oracle.com/javaee/7/tutorial/doc/
Cedric Dumoulin (C) The Java EE 7 Tutorial http://docs.oracle.com/javaee/7/tutorial/doc/ Webographie The Java EE 7 Tutorial http://docs.oracle.com/javaee/7/tutorial/doc/ Les slides de cette présentation
Plus en détailExtension SSO Java. Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java.
Note technique W4 Engine Extension SSO Java Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java. 1 Présentation 3 2 Custom SSO Java 4 3 Bilan 10 Sommaire Référence
Plus en détailDéveloppement d'un logiciel VoIP BlackBerry
UNIVERSITE DES SCIENCES, DES TECHNIQUES ET DES TECHNOLOGIES DE BAMAKO (USTTB) Développement d'un logiciel VoIP BlackBerry Par Mlle Kadidiatou Djibo Encadreurs : Mme Sogoba Jacqueline Konate, Maître-Assistant,
Plus en détailSupervision et infrastructure - Accès aux applications JAVA. Document FAQ. Page: 1 / 9 Dernière mise à jour: 15/04/12 16:14
Document FAQ Supervision et infrastructure - Accès aux EXP Page: 1 / 9 Table des matières Introduction... 3 Démarrage de la console JMX...4 I.Généralités... 4 II.WebLogic... 5 III.WebSphere... 6 IV.JBoss...
Plus en détailWEB page builder and server for SCADA applications usable from a WEB navigator
Générateur de pages WEB et serveur pour supervision accessible à partir d un navigateur WEB WEB page builder and server for SCADA applications usable from a WEB navigator opyright 2007 IRAI Manual Manuel
Plus en détailDéveloppement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS
Avant de commencer 1. Introduction 15 2. HTML5 oui, mais pas que... 15 2.1 HTML5 16 2.2 JavaScript 17 2.3 CSS 18 3. Les outils 18 Préparation des outils et création du projet 1. Introduction 21 2. Team
Plus en détailet Active Directory Ajout, modification et suppression de comptes, extraction d adresses pour les listes de diffusion
et Active Directory Ajout, modification et suppression de comptes, extraction d adresses pour les listes de diffusion Copyright 2009 Alt-N Technologies. 3 allée de la Crabette Sommaire Résumé... 3 MDaemon
Plus en détailQuelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)
Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07
Plus en détailLes services usuels de l Internet
Les services usuels de l Internet Services principaux (applications) disponibles sur l Internet Courrier électronique (mail) - protocole SMTP (Simple Mail Transfer Protocol) inclut maintenant tous types
Plus en détailProgrammation Web Avancée Introduction aux services Web
1/21 Programmation Web Avancée 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étailCette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :
Développement d un client REST, l application Vélib 1. Présentation L application présentée permet de visualiser les disponibilités des vélos et des emplacements de parking à la disposition des parisiens
Plus en détailBIRT (Business Intelligence and Reporting Tools)
BIRT (Business Intelligence and Reporting Tools) Introduction Cette publication a pour objectif de présenter l outil de reporting BIRT, dans le cadre de l unité de valeur «Data Warehouse et Outils Décisionnels»
Plus en détailServeur d'application Client HTML/JS. Apache Thrift Bootcamp
Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/
Plus en détailVanilla : Virtual Box
Vanilla : Virtual Box Installation Guide for Virtual Box appliance Guide d'installation de l'application VirtualBox Vanilla Charles Martin et Patrick Beaucamp BPM Conseil Contact : charles.martin@bpm-conseil.com,
Plus en détailINTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)
CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.
Plus en détailEvolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht.
Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht.fr 1 MVC et le web 27/05/14 2 L'évolution des systèmes informatiques
Plus en détailFileMaker Server 11. Publication Web personnalisée avec XML et XSLT
FileMaker Server 11 Publication Web personnalisée avec XML et XSLT 2007-2010 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker est une
Plus en détailTutoriel: Création d'un Web service en C++ avec WebContentC++Framework
Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework Gaël de Chalendar CEA LIST / LIC2M Journée de Présentation des Technologies WebContent INSTN 14/12/2009 Présentation de gsoap Plan
Plus en détailWEBSERVICES. Michael Fortier. Master Informatique 2ème année. fortier@lipn.univ-paris13.fr A308, Université de Paris 13
WEBSERVICES Michael Fortier Master Informatique 2ème année fortier@lipn.univ-paris13.fr A308, Université de Paris 13 https ://lipn.univ-paris13.fr/ fortier/enseignement/webservices/ Sommaire 1 Rappels
Plus en détailDévelopper des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David
Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server Sébastien Boutard Thomas David Le plan de la présentation Petit retour sur les environnements de développement ArcGIS Server
Plus en détailRègles et paramètres d'exploitation de Caparmor 2 au 11/12/2009. Pôle de Calcul Intensif pour la mer, 11 Decembre 2009
Règles et paramètres d'exploitation de Caparmor 2 au 11/12/2009 Pôle de Calcul Intensif pour la mer, 11 Decembre 2009 CAPARMOR 2 La configuration actuelle Les conditions d'accès à distance règles d'exploitation
Plus en détailJoomla! Création et administration d'un site web - Version numérique
Avant-propos 1. Objectifs du livre 15 1.1 Orientation 15 1.2 À qui s adresse ce livre? 16 2. Contenu de l ouvrage 17 3. Conclusion 18 Introduction 1. Un peu d histoire pour commencer... 19 1.1 Du web statique
Plus en détailSIP. Plan. Introduction Architecture SIP Messages SIP Exemples d établissement de session Enregistrement
SIP Nguyen Thi Mai Trang LIP6/PHARE Thi-Mai-Trang.Nguyen@lip6.fr UPMC - M2 Réseaux - UE PTEL 1 Plan Introduction Architecture SIP Messages SIP Exemples d établissement de session Enregistrement UPMC -
Plus en détailHTTP HTTP. IUT1 dpt SRC L Isle d Abeau Jean-françois Berdjugin. Introduction et architecture Messages Authentification Conclusion
HTTP IUT1 dpt SRC L Isle d Abeau Jean-françois Berdjugin HTTP Introduction et architecture Messages Authentification Conclusion 1 HTTP Introduction et architecture Hypertext Transfert Protocol URI (Uniform
Plus en détailForthcoming Database
DISS.ETH NO. 15802 Forthcoming Database A Framework Approach for Data Visualization Applications A dissertation submitted to the SWISS FEDERAL INSTITUTE OF TECHNOLOGY ZURICH for the degree of Doctor of
Plus en détailXtremWeb-HEP 8.0.0. Interconnecting jobs over DG. Virtualization over DG. Oleg Lodygensky Laboratoire de l Accélérateur Linéaire
XtremWeb-HEP 8.0.0 Interconnecting jobs over DG Virtualization over DG Oleg Lodygensky Objectives 1.Deploy Virtual Machines in XtremWeb-HEP desktop grid to: protect volunteer resources generalize «pilot
Plus en détail4. Utilisation d un SGBD : le langage SQL. 5. Normalisation
Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :
Plus en détailMysql. Les requêtes préparées Prepared statements
Mysql Les requêtes préparées Prepared statements Introduction Les prepared statements côté serveur sont une des nouvelles fonctionnalités les plus intéressantes de MySQL 4.1 (récemment sorti en production
Plus en détailLes solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC. Qui contacter pour commencer la mise en place d une configuration de test?
Les solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC Qui contacter pour commencer la mise en place d une configuration de test? CyberMUT Paiement - Paiement CIC Commerce Electronique mailto:centrecom@e-i.com
Plus en détailSécurité des applications web. Daniel Boteanu
I F8420: Éléments de Sécurité des applications web Daniel Boteanu Architecture des applications web Client légitime Internet HTTP 浀 HTML Server Web 2 Architecture des applications web Client légitime Internet
Plus en détailADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5
ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5 Informations juridiques Copyright 2010 Adobe Systems Incorporated and its licensors. All rights reserved. Administration d Adobe LiveCycle Mosaic 9.5 13 octobre
Plus en détailGilles.Roussel univ-mlv.fr HTTP/1.1 RFC 2068
HTTP/1.1 RFC 2068 1 Caractéristiques Niveau application Sans état Tout transfert de données Au dessus du protocole TCP Largement utilisé dans le World Wide Web Utilise les normes : URI (Uniform Resource
Plus en détailSYSTÈMES D INFORMATIONS
SYSTÈMES D INFORMATIONS Développement Modx Les systèmes de gestion de contenu Les Content Management Système (CMS) servent à simplifier le développement de sites web ainsi que la mise à jour des contenus.
Plus en détailDOCUMENTATION MODULE BLOCKCATEGORIESCUSTOM Module crée par Prestacrea - Version : 2.0
DOCUMENTATION MODULE BLOCKCATEGORIESCUSTOM Module crée par Prestacrea - Version : 2.0 INDEX : DOCUMENTATION - FRANCAIS... 2 1. INSTALLATION... 2 2. CONFIGURATION... 2 3. LICENCE ET COPYRIGHT... 3 4. MISES
Plus en détailModule BD et sites WEB
Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD
Plus en détailLes Portfolios et Moodle Petit inventaire
Les Portfolios et Moodle Petit inventaire Jean.Fruitete@univ-nantes.fr Sommaire Les Portfolios et Moodle Petit inventaire... 1 Introduction... 1 Contexte... 1 Des portfolios utilisés dans la communauté
Plus en détailDOCUMENTATION - FRANCAIS... 2
DOCUMENTATION MODULE CATEGORIESTOPMENU MODULE CREE PAR PRESTACREA INDEX : DOCUMENTATION - FRANCAIS... 2 INSTALLATION... 2 CONFIGURATION... 2 LICENCE ET COPYRIGHT... 3 SUPPORT TECHNIQUE ET MISES A JOUR...
Plus en détailTechnologies pour Web Services faciles : REST, JSON
Technologies pour Web Services faciles : REST, JSON Pierre Gambarotto INPT DSI, ENSEEIHT Département Informatique ENSEEIHT, 2 rue Charles Camichel, B.P. 7122 31071 Toulouse CEDEX7 FRANCE Résumé Cet article
Plus en détailIntroduction aux. services web 2 / 2
Introduction aux services web 2 / 2 1 Calendrier 2 x CM A 107 mercredi 7 janvier 2015, 08 h 00 10 h 00 : introduction sur la théorie des services web mercredi 28 janvier 2015, 08 h 00 10 h 00 : introduction
Plus en détailApplication web de gestion de comptes en banques
Application web de gestion de comptes en banques Objectif Réaliser une application Web permettant à un client de gérer ses comptes en banque Diagramme de cas d'utilisation 1 Les cas d'utilisation Connexion
Plus en détailPatrons de conception de Web Services
Patrons de conception de Web Services [trousse premiers secours ] Récapitulation Styles d API de Web Service RPC API Message API Resource API Styles d interaction Client Service Requête/Réponse Négociation
Plus en détailConfigurer la supervision pour une base MS SQL Server Viadéis Services
Configurer la supervision pour une base MS SQL Server Référence : 11588 Version N : 2.2 : Créé par : Téléphone : 0811 656 002 Sommaire 1. Création utilisateur MS SQL Server... 3 2. Configuration de l accès
Plus en détailTP HTTP. Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A
Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A TP HTTP TP HTTP Master IC 2 A 2014/2015 Christian Bulfone / Jean-Michel Adam 1/11 Câblage et configuration du réseau
Plus en détailEuropa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i
Développement JEE 5 avec Eclipse Europa K a r i m D j a a f a r A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i Groupe Eyrolles, 2008, ISBN : 978-2-212-12061-5 5 Le projet WTP (Web
Plus en détailLes bases de données
Les bases de données Introduction aux fonctions de tableur et logiciels ou langages spécialisés (MS-Access, Base, SQL ) Yves Roggeman Boulevard du Triomphe CP 212 B-1050 Bruxelles (Belgium) Idée intuitive
Plus en détailSOAP Concepts Application à Glassfish
SOAP Concepts Application à Glassfish LicencePro 2014 Olivier Perrin Université de Lorraine Évolution From server-side app to smart clients and services 2 Browser-based HTML Rendering (progressive enhancement)
Plus en détailTutoriel de formation SurveyMonkey
Tutoriel de formation SurveyMonkey SurveyMonkey est un service de sondage en ligne. SurveyMonkey vous permet de créer vos sondages rapidement et facilement. SurveyMonkey est disponible à l adresse suivante
Plus en détailProjet en nouvelles technologies de l information et de la communication
Projet en nouvelles technologies de l information et de la communication Site Web universitaire du Prof. Jacques Moeschler. Nono Steeve Semestre de printemps 2013 Sous la direction du Prof Luka Nerima
Plus en détailDéveloppement des Systèmes d Information
Développement des Systèmes d Information Axe ISI Camille Persson Institut Fayol / LSTI / ISCOD École Nationale Supérieure des Mines de Saint-Etienne 158 cours Fauriel, 42000 Saint-Etienne persson@emse.fr
Plus en détailCompte Rendu d intégration d application
ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...
Plus en détailUrbanisation des Systèmes d'information
Urbanisation des Systèmes d'information Des composants technologiques disponibles Urbanisation des Systèmes d'information - Henry Boccon-Gibod 1 Plan de l'exposé Technologies à la mode disponibles. Bus
Plus en détailSERVEUR DÉDIÉ DOCUMENTATION
SERVEUR DÉDIÉ DOCUMENTATION Release 5.0.6.0 19 Juillet 2013 Copyright 2013 GIANTS Software GmbH, All Rights Reserved. 1/9 CHANGE LOG Correction de bug divers (5.0.6.0) Ajout d une option de relance automatique
Plus en détailQuick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite.
Rational ClearCase or ClearCase MultiSite Version 7.0.1 Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite. Product Overview IBM Rational
Plus en détailServeurs de noms Protocoles HTTP et FTP
Nils Schaefer Théorie des réseaux (EC3a) Serveurs de noms Protocoles HTTP et FTP Théorie des réseaux (EC3a) Séance 7 Pourquoi DNS? Internet est une structure hiérarchique et arborescente de réseaux et
Plus en détailOauth : un protocole d'autorisation qui authentifie?
Oauth : un protocole d'autorisation qui authentifie? Maxime Féroul Directeur Technique / KYOS IT SECURITY Application Security Forum - 2012 Western Switzerland 7-8 novembre 2012 - Y-Parc / Yverdon-les-Bains
Plus en détail24/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étailLa base de données XML exist. A. Belaïd
La base de données XML exist Introduction Qu est-ce-que exist? C est une base de donnée native, entièrement écrite en Java XML n est pas une base de données en soi Bien qu il possède quelques caractéristiques
Plus en détailPlateforme PAYZEN. Définition de Web-services
Plateforme PAYZEN Définition de Web-services Ordre de paiement Version 1.1 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Lyra-Network
Plus en détailProblématiques de recherche. Figure Research Agenda for service-oriented computing
Problématiques de recherche 90 Figure Research Agenda for service-oriented computing Conférences dans le domaine ICWS (International Conference on Web Services) Web services specifications and enhancements
Plus en détailRefonte front-office / back-office - Architecture & Conception -
Refonte front-office / back-office - Architecture & Conception - GLG204 - Architectures Logicielles Java 2008/2009 Nom : Cédric Poisson Matricule : 06-49012 Version : 1.0 Jeudi 28 mai 2009 1 / 23 Table
Plus en détailGet Instant Access to ebook Cest Maintenant PDF at Our Huge Library CEST MAINTENANT PDF. ==> Download: CEST MAINTENANT PDF
CEST MAINTENANT PDF ==> Download: CEST MAINTENANT PDF CEST MAINTENANT PDF - Are you searching for Cest Maintenant Books? Now, you will be happy that at this time Cest Maintenant PDF is available at our
Plus en détailEXTENSION de Microsoft Dynamics CRM 2013. Réf FR 80452
EXTENSION de Microsoft Dynamics CRM 2013 Réf FR 80452 Durée : 3 jours A propos de ce cours : Ce cours offre une information interactive et détaillée sur le développement d extensions pour Microsoft Dynamics
Plus en détailCEST POUR MIEUX PLACER MES PDF
CEST POUR MIEUX PLACER MES PDF ==> Download: CEST POUR MIEUX PLACER MES PDF CEST POUR MIEUX PLACER MES PDF - Are you searching for Cest Pour Mieux Placer Mes Books? Now, you will be happy that at this
Plus en détail