Webbtjänstestandarder

Ett av huvudattributen för Internet-standarder är att de fokuserar på protokoll och inte implementationer. Internet består av heterogena tekniker som utan problem kan användas med olika protokoll. Det hindrar enskilda leverantörer från att tvinga fram en standard på Internet. Utvecklingen av program med öppen källkod spelar en viktig roll i att bibehålla plattformsoberoendet leverantörernas implementationer av standarder.

Följande standarder spelar nyckelroller vad gäller webbtjänster: UDDI (Universal Description, Discovery and Integration), WSDL (Web Services Description Language), WSIL (Web Services Inspection Language), SOAP och WS-I (Web Services Interoperability). Relationen mellan de här standarderna beskrivs i figur 2.

UDDI-specifikationen definierar öppna, plattformsoberoende standarder som gör det möjligt för företag och organisationer att dela information i ett globalt verksamhetsregister, söka efter tjänster i registret samt definiera hur de ska interagera via Internet. Mer information om UDDI finns på webbplatsen www.uddi.org.

WSIL är en XML-baserad öppen specifikation som definierar en distribuerad metod för sökning efter tjänster. Metoden tillhandahåller referenser till tjänstebeskrivningar på den plats där tjänsteleverantören erbjuder tjänsterna genom att ange hur en webbplats ska genomsökas efter tillgängliga webbtjänster. Ett WSIL-dokument definierar de platser där du kan leta efter webbtjänstebeskrivningar. Eftersom WSIL är för sökning efter distribuerade tjänster komplimenterar den UDDI genom att förenkla sökningen efter tjänster som finns på webbplatser som inte visas i ett UDDI-register ännu. I ett separat avsnitt i den här dokumentationen diskuteras relationen mellan UDDI och WSIL. Mer information om WSIL finns på webbsidan www.ibm.com/developerworks/webservices/library/ws-wsilspec.html.

WSDL är en XML-baserad öppen specifikation som beskriver gränssnitten för och förekomsterna av webbtjänster i nätverket. WSDL-specifikationen kan utökas så att ändpunkter kan beskrivas oavsett vilka meddelandeformat och nätverksprotokoll som används för kommunikation. Företag och organisationer kan göra WSDL-dokumenten för webbtjänsterna tillgängliga med UDDI eller WSIL alternativt genom att meddela URL-adresserna för WSDL-dokumenten via e-post eller på webbplatser. WSDL beskrivs i ett separat avsnitt i den här dokumentationen. Mer information om WSDL finns på webbsidan www.w3.org/TR/wsdl.

SOAP är en XML-baserad standard för meddelanden över HTTP och andra Internet-protokoll. Det är ett lättviktsprotokoll för utbyte av information i en decentraliserad, distribuerad miljö. Det är XML-baserat och består av tre delar: Med SOAP aktiveras bindningen och användningen av identifierade webbtjänster genom att en meddelandesökväg definieras för vidarebefordring av meddelanden. SOAP kan användas till att fråga UDDI efter webbtjänster. Mer information om SOAP 1.1 (webbtjänsteverktygen har inga funktioner för SOAP 1.2) finns på www.w3.org/TR/SOAP

Figur 2. Relationerna mellan SOAP, UDDI, WSIL och WSDL.

I figur 2 illustreras relationerna mellan SOAP, UDDI, WSIL och WSDL.

Tjänsteleverantören agerar som värd för webbtjänster och gör dem tillgängliga via protokoll som SOAP/HTTP och SOAP/JMS. Webbtjänsten beskrivs av ett WSDL-dokument som lagras på leverantörens server eller i ett speciellt lager. Det går att referera till ett WSIL-dokument från både UDDI-verksamhetsregister och andra WSIL-dokument. Dessa innehåller pekare till webbtjänstens WSDL-filer.

WS-I Simple SOAP Binding Profile och WS-I Attachments Profile är sammanfattningar av de krav som WSDL- och webbtjänsteprotokolltrafik (SOAP/HTTP) måste uppfylla om de ska vara kompatibla med WS-I. WS-I-verktygen för validering av webbtjänster har för närvarande funktioner för WS-I Simple SOAP Binding Profile 1.0 och Attachment Profile 1.0. Om du vill se specifikationerna besöker du WS-Is webbplats och väljer Documentation under Resources: http://www.ws-i.org.

Dessutom har Rational Developer-produkter funktioner för flera nya webbtjänstestandarder. T.ex.följande:
JAX-RPC
JAX-RPC står för Java API for XML-based RPC, även kallat JSR 101. Det är en specifikation som beskriver Java-programmeringsgränssnitt (APIer) och metoder för bygge av webbtjänster och webbtjänsteklienter som använder fjärrproceduranrop (RPC) och XML. JAX-RPC standardiserar Java till WSDL- samt WSDL till Java-avbildningar och tillhandahåller kärn-APIer för utveckling och utplacering av webbtjänster och webbtjänsteklienter på Java-plattformen. Mer information finns på webbsidan med officiella specifikationer.
JSR-109 och JSR-921
JSR-109 och JSR-921 (Implementing Enterprise Web Services) definierar programmeringsmodellen och körningsarkitekturen till att placera ut och söka efter webbtjänster i J2EE-miljön, mer specifikt i webb-, EJB- och klienttillämpningsbehållarna. Ett av huvudsyftena är att säkerställa att leverantörernas implementationer är plattformsoberoende. Mer information finns i de officiella specifikationerna:
WS-S
De här verktygen har funktioner för standarden OASIS Web Services Security 1.0. Mer information om de olika komponenterna i den här standarden finns i:

Webbtjänsteverktygen har funktioner för följande specifikationer:

Teknik eller specifikation Version eller nivå som kan användas
Transporter
HTTP/HTTPS v1.0 och v1.1
JMS  
Meddelandefunktioner
SOAP-specifikation v1.1
SOAP-bilagor  
Beskrivning
UDDI v2.0
WSDL v1.1
WSIL v1.0
Säkerhet
WS-Security OASIS Standard 1.0
Plattformsoberoende
WS-I Basic Profile 1.1.2
WS-I Simple SOAP Binding Profile 1.0.3
WS-I Attachments Profile 1.0
Andra standarder  
JAX-RPC v1.0 för J2EE 1.3 och v1.1 för J2EE 1.4
JSR 109 J2EE 1.3
JSR 921 J2EE 1.4