Web-palvelujen standardit

Yksi Internet-standardien keskeisistä ominaisuuksista on, että ne liittyvät käytäntöihin eivätkä toteutukseen. Internet muodostuu sekalaisista tekniikoista, jotka toimivat yhdessä yhteisten käytäntöjen ansiosta. Tämä estää yksittäisiä tahoja pakottamasta standardeja käyttöön Internetissä. Open Source -ohjelmistokehitys on keskeisessä osassa eri tahojen tahojen toteuttamien standardien yhteentoimivuuden säilyttämisessä.

Seuraavat standardit ovat keskeisiä Web-palveluissa: Universal Description, Discovery and Integration (UDDI), Web Services Description Language (WSDL), Web Services Inspection Language (WSIL), SOAP ja Web Services Interoperability (WS-I). Näiden standardien väliset suhteet on kuvattu kuvassa 2.

UDDI-määritys määrittää avoimen, ympäristöstä riippumattoman standardin, jonka avulla yritykset voivat vaihtaa tietoja globaalissa yritysrekisterissä, hakea rekisteristä palveluja ja määrittää, kuinka ne ovat vuorovaikutuksessa Internetissä. Lisätietoja UDDI-rekisteristä on osoitteessa www.uddi.org

WSIL on XML-perustainen avoin määritys. Se tuo käyttöön hajautetun palvelujen hakumenetelmän, joka toimittaa viittauksia palveluntarjoajan tarjouskohdassa sijaitseviin palvelujen kuvauksiin määrittämällä tavan, jolla Web-sivustoilta haetaan käytettävissä olevia Web-palveluja. WSIL-asiakirja määrittää Web-sivustoille sijainnit, joista voidaan etsiä Web-palvelujen kuvauksia. Koska WSIL keskittyy hajautettuun palvelujen hakuun, WSIL-määritys täydentää UDDI-järjestelmää helpottamalla Web-sivustoilla, joita ei ole vielä lueteltu UDDI-rekistereissä, käytettävissä olevien palvelujen hakua. Tässä ohjeessa on erillinen ohjeaihe, joka käsittelee UDDI- ja WSIL-järjestelmän välistä suhdetta. Lisätietoja WSIL-järjestelmästä on osoitteessa www.ibm.com/developerworks/webservices/library/ws-wsilspec.html

WSDL on XML-perustainen avoin määritys, joka kuvaa verkon Web-palvelujen liittymät ja ilmentymät. Se on laajennettavissa, joten päätepisteet voi kuvata huolimatta viestinnässä käytetyistä sanomien muodoista tai verkon yhteyskäytännöistä. Yritykset voivat saattaa Web-palvelujensa WSDL-asiakirjat saataville UDDI- tai WSIL-järjestelmän avulla tai lähettämällä WSDL-asiakirjojensa URL-osoitteet sähköpostin tai Web-sivustojen avulla. WSDL on erillisenä ohjeaiheena näissä ohjeissa. Lisätietoja WSDL-järjestelmästä on osoitteessa www.w3.org/TR/wsdl

SOAP on XML-perustainen standardi, jonka avulla voi lähettää sanomia HTTP:n ja muiden Internet-yhteyskäytäntöjen kautta. Se on kevyt yhteyskäytäntö tietojen vaihtoon hajautetussa ympäristössä. Se perustuu XML-kieleen ja koostuu kolmesta osasta: SOAP-yhteyskäytännön avulla voi tehdä sidontoja tunnistettuihin Web-palveluihin ja käyttää palveluja määrittämällä sanomapolun sanomien reititystä varten. SOAP-sanomien avulla voi tehdä Web-palveluja koskevia kyselyjä UDDI-rekistereihin. Lisätietoja SOAP 1.1 -versiosta on osoitteessa www.w3.org/TR/SOAP (Web-palvelujen työkaluissa en ole SOAP 1.2 -tukea)

Kuva 2. SOAP-, UDDI-, WSIL- ja WSDL-järjestelmien väliset suhteet.

Kuvassa 2 esitetään SOAP-, UDDI-, WSIL- ja WSDL-järjestelmien väliset suhteet.

Palveluntarjoaja ylläpitää Web-palvelua ja mahdollistaa sen käytön esimerkiksi SOAP/HTTP- tai SOAP/JMS-yhteyskäytäntöjen avulla. Web-palvelua kuvaa palveluntarjoajan palvelimelle tai erityiseen tietovarastoon tallennettu WSDL-asiakirja. UDDI-rekisteri ja WSIL-asiakirjat voivat viitata WSDL-asiakirjaan. Niissä on osoittimet Web-palvelun WSDL-tiedostoihin.

WS-I SOAP -perussidosprofiili ja WS-I-liiteprofiili ovat jäsennyksiä vaatimuksista, jotka WSDL-asiakirjan ja Web-palvelun yhteyskäytännön (SOAP/HTTP) liikenteen tulee täyttää, jotta ne ovat WS-I-yhteensopivia. Web-palvelujen WS-I-tarkistustyökalut tukevat tällä hetkellä WS-I SOAP -perussidosprofiilin versiota 1.0 ja liiteprofiilin versiota 1.0. Voit tarkastella määrityksiä WS-I-Web-sivustossa valitsemalla kohdassa Resources vaihtoehdon Documentation: http://www.ws-i.org

Rational Developer -tuotteet tukevat monia uusia Web-palvelujen standardeja. Niihin kuuluvat seuraavat:
JAX-RPC
JAX-RPC tulee sanoista Java API for XML-based RPC (Java-ohjelmointirajapinta XML-perusteisille etätoimintosarjakutsuille), ja se tunnetaan myös nimellä JSR 101. JAX-RPC on määritys, joka kuvaa Java Application Programming Interface (API) -ohjelmointirajapintoja sekä etätoimintosarjakutsuja (RPC, remote procedure call) ja XML-koodia käyttävien Web-palvelujen ja Web-palvelun työasemaohjelmien koontikäytäntöjä. Se standardoi Java-WSDL- ja WSDL-Java-vastaavuudet ja tuo käyttöön ydinohjelmointirajapinnat Web-palvelujen ja Web-palvelun työasemaohjelmien kehitykseen ja käyttöönottoon Java-ympäristössä. Lisätietoja on virallisissa määrityksissä.
JSR-109 ja JSR-921
JSR-109- ja JSR-921-määritykset (Web-yrityspalvelujen toteutus) määrittävät ohjelmointimallin ja ajonaikaisen ympäristön arkkitehtuurin Web-palvelujen käyttöönottoon ja hakuun J2EE-ympäristössä, tarkemmin ottaen Web-, EJB- ja työasemasovellussäilöissä. Sen yksi päätavoite on varmistaa myyjien toteutusten yhteentoimivuus. Lisätietoja on virallisissa määrityksissä:
WS-S
Nämä työkalut tukevat OASIS Web Services Security 1.0 -standardia. Lisätietoja tämän standardin eri komponenteista on seuraavissa kohteissa:

Web-palvelujen työvälinejärjestelmä tukee seuraavia määrityksiä:

Tekniikka tai määritys Tuettu versio tai taso
Siirto
HTTP/HTTPS v1.0 ja v1.1
JMS  
Sanomat
SOAP-määritys v1.1
SOAP-liitteet  
Kuvaus
UDDI v2.0
WSDL v1.1
WSIL v1.0
Suojaus
WS-suojaus OASIS Standard 1.0
Yhteentoimivuus
WS-I-perusprofiili 1.1.2
WS-I SOAP -perussidosprofiili 1.0.3
WS-I-liiteprofiili 1.0
Muut standardit  
JAX-RPC v1.0 for J2EE 1.3, v1.1 for J2EE 1.4
JSR 109 J2EE 1.3
JSR 921 J2EE 1.4