annuaire des web services et interface
d'interrogation des informations.
les "pages blanches" = liste
des entreprises : nom de l'entreprise, coordonnées, description,
des identifiants ;
les "pages jaunes" = liste des
services web de chaque entreprise en format WSDL;
les "pages vertes" = informations
techniques sur les services fournis.
annuaires privés pour le B2B (échange
Business to Business)
norme édictée par l'OASIS.
utilise XML pour les descriptions
protocole de transport SOAP.
l'annuaire est "universel" mais
physiquement réparti : constitué d'un réseau
d'annuaire UDDI et utilisant des mécanismes de réplication,
comme le DNS.
Le contenu
XML d'un registre UDDI :
la section businessEntity
décrit l'enregistrement d'1 ou plusieurs web services
d'un même fournisseur
<businessEntity> businessKey clé unique UUDI du fournisseur name description contacts discoveryURLs categoryBag listes d'attributs permettant d'identifier l'activité industrielle businessServices listes des services offerts</businessEntity>
la section businesService décrit
un service
<businessService> serviceKey clé unique UUDI du service businessKey clé du fournisseur name description contacts categoryBag listes d'attributs de classification industrielle bindingTemplates liste de descriptions techniques aux services ou liste de liaisons</businessServices>
la section bindingTemplate constitue la
liaison entre la description d'un service et son implémentation
: protocole, adresses IP, ...
liaison vers les tModels
<bindingTemplate> bindingKey clé unique UUID serviceKey clé du service description accessPoint URL, e-mail du point d'accés au service hostingRedirector redirection eventuelle de la liaison tModelIntanceDetails liste des tModels</bindingTemplate>
la section tModel
<tModel> tModelKey clé unique UUID du modéle de données name description overviewDoc pointeur vers des documents externes décrivant le modéle souvent vers le(s) fichier WSDL d'un service categoryBag</tModel>
les catégories utilisent différentes
taxonomie industrielle :
Operator: XMethods
Search For: xmethods in business name
Business Name Business Key
xmethods 94087F80-833E-CD67-92A9-D32A59A66391
.......... cliquez sur la key
Service Name Business Key Service Key
Currency Exchange Rate D1387DB1-CA06-24F8-46C4-86B5D895CA26
6FD77EF6-E7D6-6FF6-1E41-EBC80107D7B5
....................... cliquez sur la key
Service Details/Binding Templates
Service Name: Currency Exchange Rate
Description: Endpoint for service
Description Access Point Binding Key
SOAP binding http://services.xmethods.net:80/soap 0036DEBC-2F1B-EB84-09E2-3A4332C3E8B4 cliquez sur la key
Service Details/Binding Templates
Service Name: Currency Exchange Rate
Description: Endpoint for service
Description Access Point Binding Key
SOAP binding http://services.xmethods.net:80/soap 0036DEBC-2F1B-EB84-09E2-3A4332C3E8B4
Binding Details
Description: SOAP binding
Access Point: http://services.xmethods.net:80/soap
HostingRedirector:
Binding Key: 0036DEBC-2F1B-EB84-09E2-3A4332C3E8B4
tModel Instance Information
Description Instance Detail Action tModel Key
Description:
Parameters: Execute uuid:D784C184-99B2-DA25-ED45-3665D11A12E5 cliquez sur la key
tModel Details
tModel Name: Currency Exchange Rate
Description: SHORT DESCRIPTION: Exchange rate between any two
currencies.
Overview Document: wsdl link
Overview URL: http://www.xmethods.net/sd/2001/CurrencyExchangeService.wsdl#CurrencyExchangeBinding
UDDI Operator: XMethods
Authorized Name:
Related Services: Find services that implement the tModel.
Related Businesses: Find businesses that offer such services. cliquez sur execute
parametres : france usa
essayer en HTML
Une autre recherche :
operator XMethods search for 7leapcom
in business name
l'API UDDI de requête
find_business :
fournit l'identité du fournisseur du Web Service
find_service :
donne du service.
find_binding :
récupère la liaison du service considéré.
find_tmodel :
récupère le modèle de données associé.
...
les paramètres donnés sont
optionnels :
[<findQualifiers/>][<name/> [<name/>]*][<discoveryURLs/>][<identifierBag/>][<categoryBag/>][<tModelBag/>]
et name peut comporter des caractères jokers.
L'API de publication d'un Web Service
L'entreprise doit s'enregistrer auprès
d'un opérateur UDDI .
save_business :
ajoute ou modifie un fournisseur de Web Service
save _service :
ajoute ou modifie unservice.
save_binding
save_tmodel
delete_business
delete_service
....
SOA
Service Oriented Architecture
format interne strict/fort : XML
couplage externe faible : loosely-coupled
le protocole d'échange entre machines communiquantes exige
le moins de contrainte possible.
solution souple, simple, interchangable
pour le B2B
composé de :
annuaire de services UDDI
bus de service :
middleware entre le consommateur et le
producteur du service
réalise le couplage lâche
basé sur SOAP
donc un format des données échangées XML
transport des données avec le protocole
: HTTP
sécurité basé sur
:
SAML (Security Assertion Markup Language),
XML Signature, XML Encryption,
XKMS (XML Key Management Specification),
SSL (Secure Sockets Layer)
gestion transactionnelle par le "two-phase
commit" :
pour mettre à jour plusieurs bases de données réparties
entre plusieurs services, la transaction attend l'acquittement
(commit) des différents serveurs
WS-Transaction,
XAML (Transaction Authority Markup Language),
BTP (Business Transaction Protocol).
Le service :
Interfaces
décrite par WSDL
Localisation :
s'obtient par UDDI
et la section binding de WSDL
invocation :
par un couplage faible basé sur
SOAP
mode Synchrone requete avec attente de
la réponse
Asynchrone requete sans attente de la
réponse mais mise en place d'un handler qu traitera la
réponse quand elle arrivera
l' orchestration ou chorégraphie
des services pour constituer des processus métier
BPEL4WS devenu WS-BPEL(Business Process
Execution Language for Web Services) langage d'orchestration
Exercice
UDDI :
Recherchez dans le business xmethods et essayez
Dummy replacement for Weather - Temperature
: parametre 55406