240 likes | 352 Views
Introduction aux services WEB. Master Miage SID Université NANCY2. Methode1() Methode2(). Methode1() Methode2(). objet. objet. Problématique. Hôte n°2. Hôte n°1. SERVEUR. CLIENT. Historique. CORBA Common Object Request Broker Architecture OMG IDL / Protocoles d'échanges
E N D
Introduction aux services WEB Master Miage SID Université NANCY2
Methode1() Methode2() Methode1() Methode2() objet objet Problématique Hôte n°2 Hôte n°1 SERVEUR CLIENT
Historique • CORBA • Common Object Request Broker Architecture • OMG • IDL / Protocoles d'échanges • "Usine à gaz", top-down… • RMI • Remote Method Invocation • Simple • Java • DCOM • Distributed Component Object Model • Microsoft • Port/Firewall
Mécanisme invocation Serveur(Web service) Client sérialisation objet méthode +
Mécanisme Serveur(Web service) Client réponse sérialisation Exécution de la méthode (RPC) objet
Concrètement SOAP/XML Serveur(Web service) Client SOAP/XML Contenu des messages ASCII
Concrètement HTTP Serveur(Web service) Client HTTP Transport des messages PB de FIREWALL
Intérêt • Bottom-up • S'appuie sur des technologies bien ancrées: XML, HTTP • Procède par évolution (révolution) • SOAP, RPC,… • Rassemblement des plus grands acteurs pour définir les standards et offrir les outils: • IBM, ORACLE, MICROSOFT, BEA, SUN,… • WSI (Web Services Interoperability Organization)
Cadre général • Systèmes patrimoniaux • Legacy system • Protection de l’investissement logicielle dans le temps • Approche sous forme de composants (brique) • Cohabitation des composants (agrégation applicative) • Urbanisation des systèmes • Communication avec les systèmes d’information des partenaires (clients, fournisseurs, sous-traitants,…) • B-to-B • Interopérabilité (indépendant des langages et des plateformes)
Architecture répartie • Application = assemblage de services • Combinaison de services • Internes • Ou externes • Tout interne : EAI (Intégration d'applications d'entreprise) • Tout externe : Portail d'entreprise
Exemple "Comparateur de prix" Distributeur (n) Distributeur (1) prix/produits Comparateur Client
Exemple "Agence de voyage" Réservationtransport Réservationhôtel prix/disponibilités Agence Client
Architecture typique Fournisseur (2) Fournisseur (1) Invocation d'un service Serveur Enregistrement Interrogation de service Annuaire Client
Définition • Web service : • Middleware Internet qui permet de connecter les applications des entreprises à celles de leurs clients et partenaires • Ensemble de spécifications de composants permettant l’interopérabilité des applications
Technologies JAX-RPC XML XSLT SAX DOM SOAP JAXR JAXB HTTP BEANS TOMCAT RMI SERVLET WSDL JAVA JSP UDDI ANT
Plates-formes Visual Studio NetBean Eclipse … JAX-WS AXIS XFIRE .NET Framework J2EE .NET SOAP/ XML HTTP
Un mot sur J2EE GlassFish WEBLOGIC(BEA) WEBSPHERE(IBM) ColdFusion(Macromedia) XFIRE(CodeHaus) AXIS (Apache) JAX-WS J2EE JAX-RPC SOAP/ XML HTTP
Architecture applicative Client(Java/Swing) Serveur(Web service)
Architecture applicative Client(Perl|Python|C#) Serveur(Web service)
Architecture applicative Navigateur Conteneur Web(Tomcat, JSP|Servlet) Serveur(Web service)
Architecture applicative Client- WAP(J2ME) Serveur(Web service)
Cadre conceptuel • Service Oriented Architecture (SOA) • Client / Prestataire • Contrat CLIENT PRESTATAIRE contrat implémentation interface
Références • Services Web avec J2EE et .NET, conception et implémentation. L. Maesano et al… Eyrolles • The Java Web Services Tutorial. E. Amstrong et al.. (http://java.sun.com/webservices/) • JAVA et SOAP. R. Englander. O’Reilly • Java Web Services For Experienced Programmers. H. M. Deitel et al… Prentice Hall