Web Services er det internasjonale moteordet for tiden. De store leverandørene ruster seg til kamp om det som etter alle solemerker ser ut til å bli en raskt voksende kake, og det har gått fort. I løpet av ett år har nettjenester ("web-tjenester") gått fra å være løst snakk til å bli tjenester som fungerer.
De kjempende har delt seg i to leire. Den ene ledes av Microsoft med sin .net-strategi, godt hjulpet av en hær av utviklere. Den andre er samlet rundt Java-fanen, også den med en formidabel gruppe utviklere.
På Java-siden har først og fremst BEA og IBM tatt ledelsen. Sun eier og videreutvikler J2EE Java 2 Enterprice Edition, som er plattformen tjenestene bygges på, og konkurrerer i dette raskt voksende markedet med sin iPlanet programvare. iPlanet er en videreutvikling av Netscapes serverprogramvare, som ble overtatt av Sun.
Standardisering
Selv om dette blir en tøff kamp om markedsandeler, gjøres det mye for at disse tjenestene skal virke uansett plattform, opplyser teknisk sjef Espen Kloster i BEA Norge. Alle de store aktørene har gått sammen i organisasjonen Web Service Interoperability Organization, som skal sørge for at brukerne får et best mulig tilbud uavhengig av operativsystem.
- Alle leverandørene har en felles interesse i det, men selvsagt blir dette også en kamp mellom Microsoft og alle oss på Java-plattformen. Selv om .net sikkert vil bli utbredt, regner vi IBM som vår fremste konkurrent. Sammen med dem dominerer vi fullstendig forretningsmarkedet, og jeg tror Microsoft først og fremst vil lykkes i forbrukermarkedet, sier Kloster.
Servere i samhandel
Kloster peker på at hele konseptet med web-tjenester hviler på noen få, men viktig standarder som brukes av både Java- og .net-plattformen. For å defineres som en webtjeneste, er første forutsetning at den kan kjøres på internett.
Den andre forutsetningen er at to eller flere servere samhandler i bakgrunnen for å produsere det resultatet som etterspørres. Det betyr at en vanlig nettbank ikke er definert som en web-tjeneste, for her får du svar fra én maskin.
For at slike tjenester skal fungere, må serverne kunne snakke med hverandre, og de må snakke et slags web-esperanto på tvers av leverandørgrensene. Dette fellespråket er basert på at både .net- og Java-programmene forstår et felles sett med protokoller, der de viktigste er Soap, Uddi, WDSL og XML.
Uendelige muligheter
Bare fantasien begrenser hva slags tjenester som kan utvikles ved å utnytte mulighetene som finnes på ulike servere i nettet. En typisk web-tjeneste kan være en franskmann som skal kjøre bil i Norge og som henter inn trafikkinformasjon om E18 i sin internettportal. Siden han ikke snakker norsk, kommuniserer portalen med en tjeneste som oversetter informasjonen til fransk.
Et annet eksempel, som er i drift, er Postens pakkesporesystem. Det viser deg hvor pakken din er, når du taster inn forsendelsesnummeret. Tjenesten kommuniserer i bakgrunnen med alle serverne rundt om i verden som har informasjon om pakkene.
En av de tidligste tjenestene her i landet er betalingstjenesten Netaksept. Den er utviklet på BEAs WebLogic plattform av Accenture, Posten og DnB. Netaksept bruker Soap-protokollen for å utføre betaling av varer og tjenester fra ulike nettbutikker. Netaksept har allerede vært i drift i over ett år.
Ikke bare enkelt
Tjenester som pakkesporing er ifølge Kloster enkle saker. Her kreves ikke mye for å produsere et korrekt svar. Verre er det hvis datamaskinene skal forhandle med hverandre i mer komplekse dialoger og gir brukeren det rene god dag mann økseskaft-svar.
- Når mange datamaskiner skal samarbeide om en tjeneste, er det også viktig at brukeren får et svar selv om en av maskinene er nede, eller at den har endret seg, sier Kloster. Hvis oversettelsestjenesten som franskmannen bruker når han sjekker forholdene på E18, ikke er i drift, er det kanskje bedre å få teksten på norsk enn ingen informasjon i det hele tatt.
Web-tjenester kommer til å øke kraftig i årene fremover, mener Kloster. Svært mye av den informasjonen og de tjenestene som skal tilbys, finnes allerede i bedriftenes IT-systemer. Dette handler om å få merverdi fra de tradisjonelle datasystemene. Innovatørfasen går mot slutten, og de brede brukergruppene er på rask vei inn på dette området. - Gjør du dette riktig, vil du kunne skaffe deg et stort konkurransefortrinn, sier Kloster.
Verktøyet
Dette er protokollene, eller fellespråket, som gjør web-tjenester til et bredt fungerende verktøy:
Soap - Simple Object Access Protocol er en måte å pakke inn transaksjoner på, slik at de kan sendes over nettet og tolkes av en web-tjeneste. Soap tillater at programmer kommuniserer med hverandre på tvers av operativsystemgrenser ved å bruke HTTP og XML.
Uddi er en måte å beskrive en katalog på nettet på. En slik katalog forteller hvilke tjenester den kan tilby. Den kan enten være åpen for alle, eller være helt privat slik at den bare kan brukes mellom to eller et begrenset antall parter.
WSDL - Web Service Definition Language er basert på XML og beskriver tjenestene som tilbys og anviser hvordan de kan brukes
XML - eXtensible Markup Language er en måte å beskrive informasjon om tekst i et HTML-dokument på, slik at innholdet kan tolkes av en tjeneste som forstår den aktuelle XML-dialekten. HTML-koden kan bestemme at et nummer, slik som 1650, skal skrives i 10 punkt Times sort, men har det en XML-tag i tillegg, kan det identifiseres som et postnummer.