WebServices With Tomcat And Java 1.6 Auteur: Frank Sauvage.
|
|
- Bertrand Croteau
- il y a 8 ans
- Total affichages :
Transcription
1 WebServices With Tomcat And Java 1.6 Auteur: Frank Sauvage. 1 \ Rappels sur les services web 1.1 \ Architectures SOA Concues et definies à l'origine par le Gartner Group, les architecture orientées services (SOA) sont une solution nouvelles à la complexité induite par la taille toujours plus importantes des applications et structures composant les systémes d'information d'aujourd'hui. Alors que la programmation orientée objet à permis une évolution majeure dans les developpements informatiques, cette avancée se limitait cependant principalement à la reutilisation des librairies induisant la conception de larges applications basées sur des briques toujours plus performantes, mutualisées et maintenues par des communautés ou groupes de developpeurs. Avec l'arrivée des SOA, l'une des premieres avancées fut la possibilité de concentrer les codes metiers la où ils etaient produits, et de permettre leur utilisation à distance via un protocole standardisé SOAP. Reprenant le concept des RMI, les services webs permettent cependant une plus grande flexibilitée dans leur utilisation. Chaque service est maitre de ses données et et des régles metiers qui y sont associées. Cela permet alors de considerer la possibilité de mettre en place de grandes applications distribuées composées de services dialoguant entre eux. Le principe de base est donc que chaque service peut etre utilisé grace à WSDL et SOAP qui sont des protocoles basés sur XML et HTTP. Quant à la recherce d'un service, cela peut etre effectué grace au protocol UDDI, mais cette méthode n'est pas encore très repandue.
2 1.2 \ WSDL Web Service Description Language (WSDL) est le protocole utilisé pour decrire un service web. C'est un format basé sur XML standardisé par le W3C qui permet principalement de decrire : Le fournisseur du WebService. Les informations que le WebService peut fournir. Le format des requêtes. Voici un exemple de fichier WSDL : <definitions targetnamespace=" name="addnumberimplservice"> <import location=" namespace=" <binding name="addnumberimplportbinding" type="ns1:addnumber"> <soap:binding style="document" transport=" <operation name="add"> <soap:operation soapaction="urn:addnumber"/> <input> <soap:body use="literal"/> </input> <output> <soap:body use="literal"/> </output> <fault name="addnumberexception"> <soap:fault name="addnumberexception" use="literal"/> </fault> </operation> </binding> <service name="addnumberimplservice"> <port name="addnumberimplport" binding="tns:addnumberimplportbinding"> <soap:address location=" </port> </service> </definitions> Ce fichier est extrémement important pour les services web même si il n'est plus neccessaire aujourd'hui d'en avoir une connaissance précise pour les utiliser. En effet, comme nous le verrons plus loin, les outils fournis avec Java 1.6 sont desormais capables de les generer a partir d'interface Java annotées, et inversement pour l'utilisation du service web dans un client java. La definition du standard est disponible sur le site du W3C à l'adresse suivante :
3 1.3 \ SOAP Simple Object Access Protocol (SOAP) est le successeur designé de XML-RPC l'ancienne norme d'accés à des web service. Le principal inconvient de XML-RPC étant son unique support du jeu ASCII, les transfert de type unicode pour les données non textes etaient alors tributaires d'extension au format. SOAP regle ce probleme et fourni une maniere efficace d'acceder à un service distant. SOAP herite donc des avantage de XML-RPC en corrigeant ses principaux defaut hormis bien entendu la nature d'xml qui rend ce type de format plus gourmands. Un autre avantage de SOAP, est sa capacité a transporter des exceptions. Tout bon developpeur java appreciera cette fonctionnalité qui permettra d'eviter de longues heures de debogage. De même que pour WSDL, le W3C est chargé de sa standardisation qui est disponible à l'addresse suivante : \ UDDI Unniversal Description, Discovery and Integration (UDDI) est un protocole géré par l'oasis ( ) qui est un consortium principalement principalement composé par Microsoft, IBM et Ariva. Il s'agit en fait d'un annuaire de service très performant mais qui dans la realité seduit peu. En effet, la tendance interne veut que les webservices soit plutôt utilisés en interne dans les organismes et leurs partenaires plutôt que publiquement sur le net. Il existe cependant de nombreux services interressant tels que le très connu Google qui offre un accés à son moteur par ce biais.
4 2 \ Java 1.6 et les services Web 2.1 \ Présentation des API L'une des principales avancées apportées par la nouvelle machine virtuelle java est l'integration de JAX-WS 2.0. cette api, Java Api for XML WebServices (JAX-WS) offre une integration poussée des services web au sein de Java. Principalement developpée pour J2EE 5, elle succéde à l'api JAX-RPC changeant de dénomination au passage afin de refleter sa plus large integration de fonctionnalitées (d'ou le 2.0). JAX-WS 2.0 se base sur l'api JAXB pour permettre le mapping Objet/XML où JAX-RPC integrait ses propres methodes. De plus, il n'est plus neccessaire de s'occuper des descriptifs WSDL dans la mesure où des annotations specifiques ont été introduites afin de definir les parametres directement au sein du code Java qui permettront de generer gràce à Xdoclet les classes et fichiers neccessaires à leur utilisation. Concernant la securité, Les XML Digital Signatures sont egalement presentes. 2.2 \ JAX-WS 2.0 JAX-WS 2.0 fait partie du projet GlassFish, serveur open-source developpée en collaboration avec Sun pour le support de J2EE 5. Il est possible de telecharger l'implementation de reference sur le site suivant Nous utiliserons par ailleurs dans ce document cette implémentation.
5 3 \ configurer tomcat pour prendre en charge les web services 3.1 \ Ajout des libraires partagées Pour pouvoir utiliser les WebService et particulierement JAX-WS 2.0 avec un container tomcat, il est neccessaire d'ajouter à ce dernier les librairies neccessaires. Le repertoire Lib de l'installation de JAXWS-RI (l'implementation de reference) contient tous les jar neccessaires. Il est donc neccessaire de copier ces derniers dans le repertoire $TomcatHome/share/lib/, ce qui permettra d'utiliser une servlet speciale. Les fichiers suivants doivent donc etre dans le repertoire : -rw-r--r-- 1 tomcat tomcat jui 8 02:23 activation.jar -rw-r--r-- 1 tomcat tomcat jui 8 02:23 FastInfoset.jar -rw-r--r-- 1 tomcat tomcat jui 8 02:23 http.jar -rw-r--r-- 1 tomcat tomcat jui 8 02:23 jaxb-api.jar -rw-r--r-- 1 tomcat tomcat jui 8 02:23 jaxb-impl.jar -rw-r--r-- 1 tomcat tomcat jui 8 02:23 jaxb-xjc.jar -rw-r--r-- 1 tomcat tomcat jui 8 02:23 jaxws-api.jar -rw-r--r-- 1 tomcat tomcat jui 8 02:23 jaxws-rt.jar -rw-r--r-- 1 tomcat tomcat jui 8 02:23 jaxws-tools.jar -rw-r--r-- 1 tomcat tomcat jui 8 02:23 jsr173_api.jar -rw-r--r-- 1 tomcat tomcat 7995 jui 8 02:23 jsr181-api.jar -rw-r--r-- 1 tomcat tomcat 6165 jui 8 02:23 jsr250-api.jar -rw-r--r-- 1 tomcat tomcat jui 8 02:23 resolver.jar -rw-r--r-- 1 tomcat tomcat jui 8 02:23 saaj-api.jar -rw-r--r-- 1 tomcat tomcat jui 8 02:23 saaj-impl.jar -rw-r--r-- 1 tomcat tomcat jui 8 02:23 sjsxp.jar Un redemarage de tomcat est ensuite neccessaire pour la prise en compte de ces jar. En effet, il ne s'agit pas ici de librairies gérées par le ClassLoader de tomcat, mais par le classpath de la machine virtuelle associée. 3.2 \ Configuration d'un contexte pour les webservices Comme tout contexte, la configuration principale est effectuée dans le fichier web.xml. L'exemple suivant montre les principales directives de configuration. <?xml version="1.0" encoding="utf-8"?> <web-app version="2.4" xmlns=" <display-name>addnumber</display-name> <description>addnumber</description> <listener> <listener-class>com.sun.xml.ws.transport.http.servlet.wsservletcontextlistener</listener-class> </listener> <servlet> <servlet-name>addnumber</servlet-name> <display-name>addnumber</display-name> <description>jax-ws endpoint - addnumber</description> <servlet-class>com.sun.xml.ws.transport.http.servlet.wsservlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>addnumber</servlet-name> <url-pattern>/addnumbers</url-pattern> </servlet-mapping> </web-app>
6 Les habitués de tomcat reconnaitront aisément les particularités de ce fichier. Tout d'abord, afin que le contexte puisse hebergé des WebService, il est neccessaire d'initialiser un listener specifique <listener> <listener-class>com.sun.xml.ws.transport.http.servlet.wsservletcontextlistener</listener-class> </listener> Ce listener est utilisé par JAX-WS pour reagir aux differents evenements de contexte, tels que les redemarrages ou les initialisations. Il s'agit d'une directive obligatoire qui permet à JAX-WS de demarer et entre autre savoir quand lire son fichier de configuration propre. Ensuite, la declaration de la servlet suivante permet d'initialiser les web services. <servlet> <servlet-name>addnumber</servlet-name> <display-name>addnumber</display-name> <description>jax-ws endpoint - addnumber</description> <servlet-class>com.sun.xml.ws.transport.http.servlet.wsservlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> Comme pour toute servlet, apparaissent le nom, la description et la classe principale, ici : <servlet-class>com.sun.xml.ws.transport.http.servlet.wsservlet</servlet-class> cette classe est presente dans les Jar installés plus haut dans le repertoire share/lib de tomcat. 3.3 \ le fichier sun-jaxws.xml le fichier sun-jaxws.xml est le fichier de configuration des web service de l'implementation sun de JAX-WS 2.0. Il contient en particulier la liste des endpoints ou WebServices disponibles dans ce contexte. Un endpoint est une adresse finale ou un service web peut être appelé. L'exemple suivant illustre la configuration : <?xml version="1.0" encoding="utf-8"?> <endpoints xmlns=' version='2.0'> <endpoint name='addnumberwebservice' implementation='annotations.server.addnumbersimpl' url-pattern='/addnumbers'/> </endpoints> Comme on peut le constater, un service web est defini par : un nom Le nom du service est defini par le programmeur. Il doit étre coherent une implementation L'implementation est la classe qui implemente l'interface du WebService. Cela sera etudié plus tard. une url-pattern L'url pattern est le moyen qu'utilise la servlet pour savoir quoi ecouter. Il doit étre le même que dans le web.xml afin d'eviter tout probléme.
7 4 \ Un premier WebService Pour debuter, nous allons voir un premier service web qui additionne deux nombres. Nous aurions pu faire un HelloWorld, mais cela n'aurait pas permis d'illustrer les avantages de JAX-WS 2.0. La création d'un service web reponds à diverses étapes importantes : Création d'une interface representant le service web. Implémentation du service web Build avec ant. Deploiement 4.1 \ L'interface AddNumber Voici l'interface AddNumber : package ws; import java.rmi.remote; import java.rmi.remoteexception; import javax.jws.webmethod; import javax.jws.webparam; import javax.jws.webresult; import javax.jws.webservice; import = " use=soapbinding.use.literal) public interface AddNumbers extends Remote public int number2) throws RemoteException, AddNumberException; Comme on peut le constater, l'utilisation des annotations est importante et prends enormément de place. De plus, chaque annotation neccessite des imports qui lui sont propres. Le repertoire docs de l'implementation de sun contient une documentation html des differentes annotations existantes.
8 Tout d'abord afin que l'interface soit reconnue comme service web, il est neccessaire d'heriter de l'interface Remote, qui signifie que les methodes seront utilisables à distance. Cette interface provient en fait de RMI qui reste toujours la base de ce type de fonctionnalités. Exemple : public interface AddNumbers extends Remote { elle permet de specifier que l'interface est un WebService. exemple = " name="addnumber") targetnamespace est l'espace de nommage utilisé dans le WSDL et autres fichiers XML générés par le service. name represente le nom du service web. Ce nom doit etre le meme que dans le fichier sunjaxws.xml et corresponds au wsdl:service. elle permet de specifier comment seront transformés les objets en xml exemple use=soapbinding.use.literal) le parametre style permet de specifier le format de transformation. 2 choix sont possibles : SOAPBinding.Style.DOCUMENT : SOAPBinding.Style.RPC : Le format le plus ancien le parametre use quand à lui precise l'encodage. Seul LITERAL est possible avec JAX-WS 2.0 La declaration d'une methode est tout aussi simple dans notre cas, nous avons une methode qui permet d'additionner 2 public int number2) throws RemoteException, AddNumberException; permet de specifier le nom de la methode et l'action WS associée permet quand à elle de nommer le resultat de la methode. permet pour finir de nommer chaque paramétre de la methode. Concernant les exceptions, chaque methode destinée à etre une WebMethode doit permettre de propager des RemoteException. Ces exceptions permettent de prevenir les erreurs de connections diverses dues au reseau. Une seconde exception, AddNumberException à été rajoutée afin de permettre d'illustrer le fonctionnement des exceptions dans les WebService.
9 4.2 \ L'implementation du Service il est ensuite neccessaire d'implementer l'interface afin que le service renvoi les informations que nous desirons. Il n'y a aucune particularité ici, si ce n'est l'emploi d'une AddNumberException dans le cas ou l'un des nombres serait negatif. Cela n'a en fait aucune neccessité particuliere, mais permettra d'utiliser une exception personnalisée. La classe AddNumberImpl : package ws; import public class AddNumberImpl { public int addnumber(int nb1, int nb2) throws AddNumberException { if (nb1 < 0 nb2 < 0){ throw new AddNumberException("Ne peut Ajouter des nombres negatifs", "Nombres : " + nb1 + ", " + nb2); else{ return nb1 + nb2; La classe AddNumberException : package ws; public class AddNumberException extends Exception { private static final long serialversionuid = 1L; private String detail; public AddNumberException(String message, String detail) { super(message); this.detail = detail; public String getdetail() { return detail;
10 4.3 \ Script Ant : le build.xml Maintenant que nous avons specifier et implementé l'interface, il va nous falloir generer et compiler les classes supplementaires neccessaire au webservice. Pour cela Ant est un très bon outil qui offre fonctionne comme un langage de scripts sequentiel, où des taches sont effectuées les unes aprés les autres. Nous allons donc utiliser l'outil APT (Annotation Processing Tool) via une tache Ant pour parcourir les classes Annotées et effectuer les operations neccessaires. Le fichier build.xml suivant est un exemple minimum pour effectuer cette operation : <?xml version="1.0" encoding="utf-8"?> <project basedir="." default="server" name="annotations"> <!-- classpath additionnel pour APT --> <path id="build.classpath"> <pathelement location="${java.home/../lib/tools.jar"/> <pathelement location="jaxws-tools.jar"/> </path> <!-- definition des taches supplementaires --> <taskdef name="apt" classname="com.sun.tools.ws.ant.apt"> <classpath refid="build.classpath"/> </taskdef> <!-- build du webservice --> <target name="server" > <apt </apt> </target> </project> fork="true" debug="${debug" verbose="${verbose" destdir="." sourcedestdir="." sourcepath="."> <classpath> <path refid="build.classpath"/> <pathelement location="."/> </classpath> <option key="r" value="."/> <source dir="."> <include name="ws/*.java"/> </source>
11 4.4 \ Déploiement et Accés au service Pour deployer notre service web, nous n'avons plus qu'a copier les repertoires contenant les classes compilées sur le serveur tomcat dans notre contexte. De plus nous avons aussi besoin des deux fichiers web.xml et sun-jaxws.xml ce qui nous donneras la structure suivante : WEB-INF \ - web.xml - sun-jaxws.xml - classes \ - ws \ - jaxws\ L'accés au service peut ensuite se faire via l'url du contexte en y ajoutant l'urn /addnumber Par exemple si l'addresse de votre contexte est le webservice est alors disponible a l'url suivante : Dans notre cas, notre premier WebService, JAX-WS 2.0 affichera donc la page suivante :
12 5 \ Utilisation d'un WebService Il apparaît donc que la création d'un webservice en Java devient desormais une tache extrement simple et ne neccessitant plus de se soucier des problématiques inhérentes à la création de classes de transport ou de handler XML Il nous reste maintenant à etudier la maniére dont nous pouvons acceder à ce même webservice. Dans ce chapitre nous allons donc
13 X \ Securisation des services Web Web Services Message Security API X \ references : JSR 175 JSR 181 JSR 109 JSR 183
Introduction 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é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é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é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étailUtilisation de Jakarta Tomcat
ISI 1022 : Déploiement d applications Web Jean-Noël Sorenti. Année 2002/2003 Déploiement d application Web Utilisation de Jakarta Tomcat ISI 1022 : 1 ISI 1022 : Déploiement d applications Web Une application
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é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étailRMI le langage Java XII-1 JMF
Remote Method Invocation (RMI) XII-1 Introduction RMI est un ensemble de classes permettant de manipuler des objets sur des machines distantes (objets distants) de manière similaire aux objets sur la machine
Plus en détailProjet Java EE Approfondi
EISTI Projet Java EE Approfondi Manuel d installation du framework Stripes Amaury Languillat, Yann Gonzalez, Arnaud Recher, Vincent Laronde, Anys Mechkar 10 Manuel d installation Téléchargement On part
Plus en détailSysteme d'exploitation
Introduction au dévellopement de Methodes Natives Partie I : appelle de methodes C++ sous windows Auteur: Frank Sauvage. 1 \ introduction aux methodes natives : Les methodes natives sont des methodes devellopées
Plus en détailApplication de lecture de carte SESAM-Vitale Jeebop
Application de lecture de carte SESAM-Vitale Jeebop Présentation Le module de lecture de carte SESAM-Vitale Jeebop est une application Java Web Start, c'est à dire une application Java qui se télécharge
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é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é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é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étail4. 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é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étail1. Installation d'un serveur d'application JBoss:
EPITA Ala Eddine BEN SALEM App-Ing2 J2EE T.P. 4 EJB3, Serveur d'application JBoss 1. Installation d'un serveur d'application JBoss: télécharger l'archive du serveur JBoss à l'adresse: http://sourceforge.net/projects/jboss/files/jboss/jboss-5.0.0.ga/jboss-5.0.0.ga.zip/download
Plus en détailBPEL Orchestration de Web Services
Orchestration de Web Services Grégory Le Bonniec gregory.lebonniec@zenika.com 26 novembre 2009 1 Zenika Conseil / Développement / Formation Localisation : Paris et Rennes Nos partenaires Mon expérience
Plus en détailLes architectures 3-tiers Partie I : les applications WEB
Les architectures 3-tiers Partie I : les applications WEB 1 Evolutions logicielles Des objets aux composants... Objets JavaBeans, Objets ActiveX, Objets COM,... 1 Evolutions logicielles Des objets aux
Plus en détailUrbanisme du Système d Information et EAI
Urbanisme du Système d Information et EAI 1 Sommaire Les besoins des entreprises Élément de solution : l urbanisme EAI : des outils au service de l urbanisme 2 Les besoins des entreprises 3 Le constat
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é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é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é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é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étailRemote Method Invocation (RMI)
Remote Method Invocation (RMI) TP Réseau Université Paul Sabatier Master Informatique 1 ère Année Année 2006/2007 Plan Objectifs et Inconvénients de RMI Fonctionnement Définitions Architecture et principe
Plus en dé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é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étailBusiness Process Execution Language
Business Process Execution Language Rapport du projet de systèmes distribués d information Markus Lindström 6 mai 2009 Motivation personnelle Le sujet que j ai retenu et présenté dans le cadre du cours
Plus en détailTable des Matières. Qu'est ce qu'un service Web
Table des Matières Etendre les Applications J2EE avec des Services Web... 1 Qu'est ce qu'un service Web... 1 Consommation de services Web existant... 2 Implémentation d'un service web dans une application
Plus en détailTD/TP 1 Introduction au SDK d Android
TD/TP 1 Introduction au SDK d Android Romain Raveaux 1 Introduction Android est un système d'exploitation pour téléphone portable de nouvelle génération développé par Google. Celui-ci met à disposition
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é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étailTP WEBSERVICES. 1 Pré-requis. 1.1 L environnement de développement. 1.2 Les librairies nécessaires 1.3 SOAPUI
Institut Galilée Année 2014-2015 TP WEBSERVICES Programmation et Logiciels sûrs Master 2 PLS Résumé Ce TP s appuie sur le cours de C. Fouqueré traitant des Environnements et Langage Évolués, ainsi que
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étailJava 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étailRMI. Remote Method Invocation: permet d'invoquer des méthodes d'objets distants.
RMI Remote Method Invocation: permet d'invoquer des méthodes d'objets distants. Méthode proche de RPC. Outils et classes qui rendent l'implantation d'appels de méthodes d'objets distants aussi simples
Plus en détailUrbanisation des SI Conduite du changement IT 20/03/09. Patrick CHAMBET http://www.chambet.com
Urbanisation des SI Conduite du changement IT 20/03/09 Sécuriser ses Web Services Patrick CHAMBET http://www.chambet.com Bouygues Telecom Direction Gouvernance, Outils et Architecture / Sécurité du SI
Plus en détailEnvironnements 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é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é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étailReporting Services - Administration
Reporting Services - Administration Comment administrer SQL Server Reporting Services Cet article a pour but de présenter comment gérer le serveur depuis le "portail" de Reporting Services. Nous verrons
Plus en détailInstallation et prise en main
TP1 Installation et prise en main Android est le système d'exploitation pour smartphones, tablettes et autres appareils développé par Google. Pour permettre aux utilisateurs d'installer des applications
Plus en détail2.1 Liferay en un clin d'oeil... 4 2.2 Forces, faiblesses, opportunités et menaces... 4 2.3 Résumé de notre évaluation... 5
Livre Blanc LE PORTAIL D'INTÉGRATION LIFERAY Version 1.0 - Novembre 2006 SOMMAIRE 1 PRÉSENTATION... 3 2 SYNTHÈSE... 4 2.1 Liferay en un clin d'oeil... 4 2.2 Forces, faiblesses, opportunités et menaces...
Plus en détailCréation d une application JEE
Création d une application JEE Rédacteurs : Alexandre Baillif, Philippe Lacomme, Raksmey Phan et Michaël PLAN Date : juillet 2010 Mise à jour : Michaël PLAN Date : octobre 2014 Avertissement : - ce document
Plus en dé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é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étailConnexion à SQL Server 2005 à partir du serveur d application SJSAS 9 Utilisation d une interface JDBC
Connexion à SQL Server 2005 à partir du serveur d application SJSAS 9 Utilisation d une interface JDBC Sommaire 1. Objectifs et intérêts... 2 2. Intégrer le driver SQL Server dans SJSAS 9... 2 2.1. Télécharger
Plus en détailJOnAS Day 5.1. Outils de développements
JOnAS Day 5.1 Outils de développements Agenda Introduction Plugin Eclipse (JOPE) Plugin NetBeans (JOnbAS) Cargo 2 Bull, 2009 JOnAS Day 5.1 Objectifs - Réduire les temps de développement - Construction
Plus en détailAuthentification avec CAS sous PRONOTE.net 2011. Version du lundi 19 septembre 2011
1 Authentification avec CAS sous PRONOTE.net 2011 Version du lundi 19 septembre 2011 2 1 - Vocabulaire employé et documentation... 3 1.1 - SSO (Single Sign-On)... 3 1.2 - CAS (Central Authentication Service)...
Plus en détailTP Composants Java ME - Java EE. Le serveur GereCompteBancaireServlet
TP Composants Java ME - Java EE Vous allez, dans ce TP, construire une architecture client serveur, plus précisément MIDlet cliente, servlet serveur. Pour cela, on va d'abord installer la partie serveur
Plus en détailJava Avancé. LicencePro 2014. Olivier Perrin Université de Lorraine
Java Avancé LicencePro 2014 Olivier Perrin Université de Lorraine Organisation 2 Objectifs du cours connaître les caractéristiques des applications Web maîtriser les concepts maîtriser une solution technique:
Plus en détailManuel d implémentation des Web Services Sous Axis1 et Axis2/Tomcat/linux. Par Pr Bouabid EL OUAHIDI
Université Mohammed-V Agdal Faculté Sciences Rabat Manuel d implémentation des Web Services Sous Axis1 et Axis2/Tomcat/linux Par Pr Bouabid EL OUAHIDI Email : ouahidi@fsr.ac.ma https://sites.google.com/site/bouabidouahidi/
Plus en détailApproche Contract First
Exemple HelpDesk Approche Contract First Développement d un premier web service en utilisant l approche contract first (ou WSDL First) Écriture du wsdl avant d écrire le code java Autre possibilité implementation
Plus en détailCréation d un service web avec NetBeans 5.5 et SJAS 9
Sommaire Création d un service web avec NetBeans 5.5 et SJAS 9 1. Présentation... 2 2. Création d un service web avec NetBeans... 2 2.1. Création d une application Web... 2 2.2. Création du service web...
Plus en détailServeur d'archivage 2007 Installation et utilisation de la BD exist
Type du document Procédure d'installation Auteur(s) Eric Bouladier Date de création 26/02/20007 Domaine de diffusion tous Validé par Equipe Versions Date Auteur(s) Modifications V1.00 26/02/2007 Eric Bouladier
Plus en détailInstitut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique
Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation
Plus en détailJ2EE - Introduction. Développement web - Java. Plan du chapitre
Développement web - Java J2EE - Introduction Franck Denoël Master 2 ICA, UPMF Année académique 2007-2008 Franck Denoël Master 2 ICA, UPMF Année académique 2007-2008 Plan du chapitre J2EE Présentation J2EE
Plus en détailChapitre 10. Les interfaces Comparable et Comparator 1
Chapitre 10: Les interfaces Comparable et Comparator 1/5 Chapitre 10 Les interfaces Comparable et Comparator 1 1 Ce chapitre a été extrait du document "Objets, Algorithmes, Patterns" de [René Lalement],
Plus en détailNuxeo 5.4 : les nouveautés
Atelier GED - 30 mars 2011, Paris Consortium ESUP-Portail Nuxeo.conf et templates Depuis la version 5.3.2, nouvelle façon de configurer Nuxeo à l'aide du fichier nuxeo.conf et des templates. Les templates
Plus en détailTitre: Version: Dernière modification: Auteur: Statut: Licence:
Titre: Mise en œuvre de mod_webobjects Version: 2.0 Dernière modification: 2010/09/06 20:00 Auteur: Aurélien Minet Statut: version finale Licence: Creative Commons
Plus en détailLivre Blanc WebSphere Transcoding Publisher
Livre Blanc WebSphere Transcoding Publisher Introduction WebSphere Transcoding Publisher vous permet d'offrir aux utilisateurs des informations Web adaptées à leurs besoins. Il vous permet, par exemple,
Plus en détailPour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère
L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la
Plus en détailApache Camel. Entreprise Integration Patterns. Raphaël Delaporte BreizhJUG 07.11.2011
Apache Camel & Entreprise Integration Patterns Raphaël Delaporte BreizhJUG 07.11.2011 1 Speaker CTO Zenika Ouest Consultant et formateur Responsable comité technique Architecture d'entreprise Domaine ESB
Plus en détailConception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA
Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA I. Introduction Suite à une demande des étudiants, il m'est apparu intéressant de montrer, à travers un exemple concret, comment
Plus en détailPRIMAVERA 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étailAvant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4
Les exemples cités tout au long de cet ouvrage sont téléchargeables à l'adresse suivante : http://www.editions-eni.fr. Saisissez la référence ENI de l'ouvrage EP5EJAV dans la zone de recherche et validez.
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les
Plus en détailTypes 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é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é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étailLes Services Web. Jean-Pierre BORG EFORT http://www.efort.com
Les Services Web Jean-Pierre BORG EFORT http://www.efort.com 1 Introduction Un "Service Web" est une application logicielle à laquelle on peut accéder à distance à partir de différents langages basés sur
Plus en détail1 / Introduction. 2 / Gestion des comptes cpanel. Guide débuter avec WHM. 2.1Créer un package. 2.2Créer un compte cpanel
Guide débuter avec WHM 1 / Introduction WHM signifie Web Host Manager (ou gestionnaire d'hébergement web). WHM va donc vous permettre de gérer des comptes d'hébergement pour vos clients. (création de compte,
Plus en détailRemote Method Invocation Les classes implémentant Serializable
Parallélisme Architecture Eric Goubault Commissariat à l Energie Atomique Saclay Classe qui implémente la méthode distante (serveur): - dont les méthodes renvoient un objet serializable - ou plus généralement
Plus en détailBases Java - Eclipse / Netbeans
Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement
Plus en détailLES ACCES ODBC AVEC LE SYSTEME SAS
LES ACCES ODBC AVEC LE SYSTEME SAS I. Présentation II. SAS/ACCESS to ODBC III. Driver ODBC SAS IV. Driver ODBC SAS Universel V. Version 8 VI. Références I. Présentation Introduction ODBC, qui signifie
Plus en détail1. Considérations sur le développement rapide d'application et les méthodes agiles
Chapitre 1 Introduction 1. Considérations sur le développement rapide d'application et les méthodes agiles 1.1 Rappel Longtemps les méthodes en cascade ou en V ont été opposées aux démarches empiriques
Plus en détailTP1. Outils Java Eléments de correction
c sep. 2008, v2.1 Java TP1. Outils Java Eléments de correction Sébastien Jean Le but de ce TP, sur une séance, est de se familiariser avec les outils de développement et de documentation Java fournis par
Plus en détailMessagerie asynchrone et Services Web
Article Messagerie asynchrone et Services Web 1 / 10 Messagerie asynchrone et Services Web SOAP, WSDL SONT DES STANDARDS EMERGEANT DES SERVICES WEB, LES IMPLEMENTATIONS DE CEUX-CI SONT ENCORE EN COURS
Plus en détailGuide des services Web 7.0
Guide des services Web 7.0 Copyright 2010 Sage Technologies Limited, éditeur de ce produit. Tous droits réservés. Il est interdit de copier, photocopier, reproduire, traduire, copier sur microfilm, et
Plus en détailPrincipes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle
2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle 1 Principes 2 Architecture 3 4 Aperçu d utilisation
Plus en détailJahia. Guillaume Monnette École Ingénieurs 2000 Marne-La-Vallée IR3
Jahia Guillaume Monnette École Ingénieurs 2000 Marne-La-Vallée IR3 Qu'est ce que c'est? Jahia est une solution de portail internet et de gestion de contenu destiné aux entreprises. (CMS and Enterprise
Plus en détailA. Architecture du serveur Tomcat 6
Administration du serveur A. Architecture du serveur Tomcat 6 La compréhension de l architecture interne du serveur Tomcat 6 est un pré-requis indispensable pour bien en maîtriser l administration et la
Plus en détailMéthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.
Méthode de Test Pour WIKIROUTE Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. [Tapez le nom de l'auteur] 10/06/2009 Sommaire I. Introduction...
Plus en détailConfiguration Interface for MEssage ROuting
Configuration Interface for MEssage ROuting Cahier des Charges Date : 05/04/07 Version : 1.1 Statut : diffusable Auteurs : BAGNARD Natacha FOROT Julien 1/16 Table des révisions Version Date Modifications
Plus en détailWebDAV en 2 minutes. Tous ces objectifs sont complémentaires et ils sont atteints grâce au seul protocole WebDAV. Scénarii
WebDAV en 2 minutes le but affirmé du groupe de travail WebDAV (DAV) est (pour ses concepteurs) de "définir les extensions de HTTP nécessaires pour assurer la disponibilité d'outils WEB de création collective
Plus en détailEtude de cas : PGE JEE V2
Arrivés à ce point du tutoriel, nous savons créer une application Web implémentant la persistance des données. Toutefois, le modèle de cette application était simple et composé d'une unique classe et les
Plus en détailIntergiciel - concepts de base
Intergiciel - concepts de base Ada Diaconescu, Laurent Pautet & Bertrand Dupouy ada.diaconescu _at_ telecom-paristech.fr Rappel : système réparti Système constitué de multiples ressources informatiques
Plus en détailEXA1415 : Annotations JavaEE : @Local, @Stateful
EXA1415 : Annotations JavaEE : @Local, @Stateful Sur une idée de P. Sécheresse sur http://developpez.com (http://tinyurl.com/5gr57j) Diapo 1 Objectif Créer un EJB CalculatriceBean (V1) Contient une opération
Plus en détailE-mail : contact@nqicorp.com - Web : http://www.nqicorp.com
- 5, rue Soutrane - 06560 Valbonne Sophia-Antipolis E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com NQI Orchestra 3.3 - Guide d'installation Windows.................................................................
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étailSHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5
SHERLOCK 7 Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 Cette note montre comment intégrer un script Java dans une investigation Sherlock et les différents aspects de Java script. S T E M M E R I M A G I N
Plus en détail1. Installation du Module
1 sur 10 Mise en place du Module Magento V 1.5.7 1. Installation du Module Vous pouvez installer le module de deux façons différentes, en passant par Magento Connect, ou directement via les fichiers de
Plus en détail2 Chapitre 1 Introduction
1 Introduction Ce livre présente les Enterprise JavaBeans 2.0 et 1.1 qui constituent la troisième et la deuxième version de la spécification des Enterprise JavaBeans. Tout comme la plate-forme Java a révolutionné
Plus en détailSage CRM. 7.2 Guide de Portail Client
Sage CRM 7.2 Guide de Portail Client Copyright 2013 Sage Technologies Limited, éditeur de ce produit. Tous droits réservés. Il est interdit de copier, photocopier, reproduire, traduire, copier sur microfilm,
Plus en détail