Upload
alphonse-marquet
View
106
Download
1
Embed Size (px)
Citation preview
Scope 2002 - L'événement Java
Java et les Services Java et les Services Web : la Deuxième Web : la Deuxième
Phase a Déjà Phase a Déjà Débuté...Débuté...
Philippe Mougin
Orchestra Networks
3 & 4 octobre 2002
Scope 2002 - L'événement Java2
L’auteurL’auteur
• Philippe Mougin
• Orchestra Networks
• Architecte logiciel – R&D EBX
3 & 4 octobre 2002
Scope 2002 - L'événement Java3
SommaireSommaire
• Les services web: originalité et bénéfices
• La seconde vague
• Orchestration
• Interactivité
• Adaptation
• Administration
3 & 4 octobre 2002
Scope 2002 - L'événement Java4
Les années « services web »Les années « services web »
• Implication totale des grands acteurs.• Apparition de nombreux acteurs dédiés,
principalement dans le monde Java (CapeClear, The Mind Electric, Systinet, Bowstreet, Shinka etc.)
• Virage des ASP, des éditeur d’EAI et de middleware classique.
• Support multi-plate formes, multi-langages (C, Perl , Smalltalk , Python, Cobol, PL1, Ada etc.)
• Explosion des séminaires, revues etc.
3 & 4 octobre 2002
Scope 2002 - L'événement Java5
Les utilisateursLes utilisateurs
• Il ne manquent qu’eux!• Adoption massive (ou rejet) durant les années
2002-2005.• Fin 2002, 75 % des entreprises ayant un
revenu supérieur à 100 millions de dollars utiliseront les services web, d’après le Gartner.
• Aujourd’hui, les early-adopters sont déjà en production, avec des applications complexes, multi-entreprises, sécurisés, transactionnelles.
3 & 4 octobre 2002
Scope 2002 - L'événement Java6
Rappel technique sur les Rappel technique sur les services webservices web
• Les services web constituent une solution, parmi d’autres, à un problème ancien: comment faire communiquer des programmes (potentiellement distants) entre eux ?
• Services web, RPC, objets distribués (Corba, RMI, DCOM, .NET Remoting etc.), MOM etc.
=> Variations sur un même thème.
3 & 4 octobre 2002
Scope 2002 - L'événement Java7
D’où viens le succès ?D’où viens le succès ?
• Utilisation d'XML pour représenter les échanges entre applications et les interfaces des services Web.
• Émergence des architectures « orientées services »
• Accord, pour la première fois, de toute l’industrie, y compris Microsoft, autour d’un standard d’interopérabilité (SOAP).
• Annuaires mondiaux de services.Bien que ces éléments soient importants, ils ne fondent pas aujourd’hui le succès de l’approche service web.
3 & 4 octobre 2002
Scope 2002 - L'événement Java8
Une idée simple et Une idée simple et astucieuseastucieuse
Utiliser l’infrastructure web existante, c.a.d. tout ce qui tourne autour d’HTTP, comme support des interactions entre applications distribuées.
3 & 4 octobre 2002
Scope 2002 - L'événement Java9
Services web: interactions Services web: interactions programmatiques sur HTTPprogrammatiques sur HTTP
Services Web = Appels programmatiques sur le Web
Communication « Application to Application » (A2A )
HTTP Request
Web classique interactif : interaction utilisateur/serveur
HTTP Response : HTML
HTTP Request
HTTP Response : Données
3 & 4 octobre 2002
Scope 2002 - L'événement Java10
Bénéfice: réduction Bénéfice: réduction radicale des coûts radicale des coûts
• Réutilisation des outils actuels, qu’il soient basés sur un serveur d’application, du scripting à la PHP, des programmes cgi etc.
• Réutilisation des compétences.
• Seuls les éléments touchant directement à la génération du HTML ou à la gestion d’une interaction utilisateur ne sont pas réutilisés.
• Coté client, il suffit de savoir émettre une requête HTTP !
3 & 4 octobre 2002
Scope 2002 - L'événement Java11
Réutilisation de Réutilisation de l’infrastructure web l’infrastructure web
• Mise en ligne d’un service web• Authentification• Cryptage• Firewalls• Scalabilité• Load-balancing, clustering, fault-tolerance• Environnement d’exécution• Administration / Logs• Semantic web & nouveaux standards du web:
approche REST
3 & 4 octobre 2002
Scope 2002 - L'événement Java12
Dynamique industrielleDynamique industrielle
1996
Premiers services web via de simples POST HTTP
1998
Microsoft, UserLand et Developmentor développent XML-RPC et SOAP
Coup de tonnerre: Microsoft annonce que SOAP est au cœur de .NET
2000
SUN qualifie SOAP de « technologie sans aucune valeur » et de « hype »
2001
SUN se rallie à SOAP et annonce sa stratégie services web. La plupart des acteurs s’impliquent.
2002
Les initiatives technologiques, les propositions de standard se multiplient
Mi-2002
SUN finalise les API Java pour les services web (notamment JAX-RPC) et publie une implémentation de référence
3 & 4 octobre 2002
Scope 2002 - L'événement Java13
La première phase: La première phase: expérimentationexpérimentation
The Mind Electric GLUE
Systinet WASP
Apache SOAP
Shinka
IONA XML-BUS
BowStreet Factory
IBM Toolkit
JAXP(SAX, DOM)
Multiplication des technologies. Éclosions d’éditeurs dédiés. APIs non standards. Interopérabilité limitée. Pas de support natif de SOAP
dans les serveurs d’application, ou support très médiocre.
Nombreuses expérimentations chez les utilisateurs.
CapeClear
3 & 4 octobre 2002
Scope 2002 - L'événement Java14
La deuxième phaseLa deuxième phase
The Mind Electric GLUE
Systinet WASP
Apache AXIS
IONA XML-BUS
BowStreet Factory
IBM Toolkit
JAXP
Standardisation via le JCP. Consolidations. Support natif de SOAP par les
serveurs d’application. Amélioration de l’interopérabilité. Rapprochement avec d’autres
initiatives: ebXML, REST etc. Industrialisation chez les early-
adopters.
Shinka
WebLogic
Oracle
JAX-RPCJAXM
JAXR
SAAJ
Apache SOAP
CapeClear
JDOM
3 & 4 octobre 2002
Scope 2002 - L'événement Java15
JAX-RPC: standard mais JAX-RPC: standard mais lourdlourd
import java.net.*;
import javax.xml.namespace.*;
import javax.xml.rpc.*;
...
URL WSDLLocation = new URL("http://test.on.com/h/s1?WSDL");
QName serviceName = new QName("http://www.on.com/Message.xsd", "ONWS");
Qname portName = new QName("http://www.on.com/Message.xsd", "ONWS");
ServiceFactory serviceFactory = ServiceFactory.newInstance();
Service service = serviceFactory.createService(WSDLLocation, serviceName);
Call call = service.createCall(portName, "HelloWorld");
call.invoke(new Object[]{});
import electric.registry.*;...
Registry.bind("http://test.on.com/h/s1?WSDL").invoke("HelloWorld",new Object[]{});
3 & 4 octobre 2002
Scope 2002 - L'événement Java16
Types d’utilisationTypes d’utilisation
Services web
pour la communication
au sein de l’entreprise
Services web pour la
communication avec des
partenaires
Services web dans
les applications grand public
Orchestration - Adaptation - Administration
3 & 4 octobre 2002
Scope 2002 - L'événement Java17
ExempleExemple
API SOAP, XML-RPC etc.
3 & 4 octobre 2002
Scope 2002 - L'événement Java18
OrchestrationOrchestration
API SOAP, XML-RPC, etc.
1 2 3 Définition des enchaînements. Approche workflow ? Appels
synchrones/asynchrones. Langage d’orchestration
(WSFL etc.)? Outils (WebLogic Workshop,
etc.) ?
3 & 4 octobre 2002
Scope 2002 - L'événement Java19
OrchestrationOrchestration
API SOAP, XML-RPC etc.
1 2 3
Exprimer les appels en Java.
Rejeter les approches « web service only ».
3 & 4 octobre 2002
Scope 2002 - L'événement Java20
Granularité Granularité
API SOAP (granularité fine)
3 & 4 octobre 2002
Scope 2002 - L'événement Java21
GranularitéGranularité
API SOAP + Gestion de l’IHM(granularité large)
Services
Web
Interacti
fs
3 & 4 octobre 2002
Scope 2002 - L'événement Java22
Services web interactifsServices web interactifs
Appels programmatiques
Appels programmatiques
Evènements IHM
Données
Données
Flux IHM
SW non interactif
SW interactif
3 & 4 octobre 2002
Scope 2002 - L'événement Java23
Services web interactifsServices web interactifs
• Groupe de travail OASIS: WSIA (Web Services for Interactive Applications)
• WSRP (Web Services for Remote Portals)
• BowStreet
• Orchestra Networks
• WebCollage
3 & 4 octobre 2002
Scope 2002 - L'événement Java24
Partenariats multiplesPartenariats multiples
Les services web permettent d’envisager de nouveaux modèles de partenariat.
Comment assurer la mise en place et la gestion de nombreux partenaires ?
Comment permettre la mise en œuvre de partenariats tactiques ?
3 & 4 octobre 2002
Scope 2002 - L'événement Java25
AdaptationAdaptation
• Les services web peuvent intégrer une technologie d’adaptation.
• Le comportement des services web est configuré différemment selon les différents contextes d’appels (partenaires).
• Les outils d’adaptation doivent êtres utilisables par des hommes métiers.
• Tests.• Adaptation en masse.• Impact méthodologique.
3 & 4 octobre 2002
Scope 2002 - L'événement Java26
AdaptationAdaptation
• Deux types d'adaptation – Adaptation graphique (uniquement pertinente pour les
services web interactifs).– Adaptation métier.
• L’adaptation implique les différents partenaires.• Délégation de certains droits d’adaptation par le
propriétaire du service web.• Plateforme commune d’adaptation.
3 & 4 octobre 2002
Scope 2002 - L'événement Java27
AdministrationAdministration
• Mise en ligne d’un nouveau service web ou d’une nouvelle version d’un service web existant.
• Collaboration Protocol Profiles (ebXML).• Collaboration Protocol Agreement (ebXML).• Validation par les divers acteurs.• Gestion des droits d’adaptation.• Définition et attribution de niveaux de services
(WSEL, CPA…).• Reporting.• Calcul d’impacts.
3 & 4 octobre 2002
Scope 2002 - L'événement Java28
Standards Standards
• ebXML (note: JAXM supporte le service d’échange de message d’ebXML).
• WSIA (Web Services for Interactive Application).
• WSRP (Web Services for Remote Portals)
Scope 2002 - L'événement Java
Questions ?Questions ?