Introduction aux services WEB

Download Report

Transcript Introduction aux services WEB

Introduction aux services WEB
Master Miage SID
Université NANCY2
Problématique
Methode1()
Hôte n°1
Methode2()
Methode1()
Hôte n°2
Methode2()
objet
objet
CLIENT
SERVEUR
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
Client
Serveur
(Web service)
réponse
sérialisation
objet
Exécution
de la méthode
(RPC)
Concrètement
SOAP/XML
Client
SOAP/XML
Serveur
(Web service)
Contenu des messages
ASCII
Concrètement
HTTP
Client
HTTP
Serveur
(Web service)
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
(1)
prix/produits
Comparateur
Client
Distributeur
(n)
Exemple "Agence de voyage"
Réservation
hôtel
prix/disponibilités
Agence
Client
Réservation
transport
Architecture typique
Fournisseur
(1)
Invocation
d'un service
Fournisseur
(2)
Enregistrement
Serveur
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
WSDL
UDDI
RMI
JAVA
SERVLET
JSP
ANT
Plates-formes
Visual Studio
.NET Framework
NetBean
…
Eclipse
JAX-WS
J2EE
.NET
SOAP/ XML
HTTP
AXIS
XFIRE
Un mot sur .NET
GlassFish
JAX-WS
HTTP
J2EE
SOAP/ XML
XFIRE
(CodeHaus)
ColdFusion
(Macromedia)
WEBSPHERE
(IBM)
WEBLOGIC
(BEA)
Un mot sur J2EE
JAX-RPC
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