Zonder enige twijfel zijn Java en XML de twee invloedrijkste technologieën van dit moment. Er zijn natuurlijk ook andere factoren die soms veel meer invloed hebben, zoals de verschuiving naar netwerkcomputers, de daaraan gekoppelde terugkeer naar centrale systemen en de op handen zijnde overheersing door telecombedrijven. De meest invloedrijke factor is echter wel de zorgwekkende overwaardering van IT-bedrijven op de aandelenbeurs; dat kan niet lang goed gaan. Op technisch niveau zijn Java en XML echter de belangrijkste ontwikkelingen.
Java en XML zijn standaarden. XML is een echte standaard. XML wordt beheerd door officiële standaardisatie-organen, zoals W3C. Java is nog steeds een de facto standaard. Java, uitgebracht door Sun Microsystems, is daarom veel kwetsbaarder voor aantasting door op winst beluste ondernemers. Zo probeert Microsoft de standaard naar zijn hand te zetten, terwijl IBM de standaard ondersteunt. Maar vergist u zich niet, IBM doet dit alleen uit eigenbelang en zou morgen gemakkelijk een andere koers kunnen gaan varen. Het is belangrijk dat de Java-standaard snel door Sun wordt overgedragen aan een onafhankelijk orgaan. Dit biedt echter geen enkele waarborg voor de openheid, omdat zowel XML als Java de basis vormen voor andere standaarden op een hoger niveau, zoals XSL en Enterprise Java Beans. Ook deze standaarden moeten ondersteund worden en dat zou in de praktijk wel eens veel moeilijker kunnen zijn. De IT-industrie moet ervoor zorgen dat er geen partiële standaarden ontstaan, zoals bij Unix en SQL; allemaal producten die op elkaar lijken, maar zoveel specifieke uitbreidingen hebben dat ze in de praktijk niet meer open zijn. Zo zijn de webbrowsers van Microsoft en Netscape, die allebei Java ondersteunen, op veel punten onderling niet compatibel.
Oppervlakkig gezien hebben XML en Java niets gemeen, behalve dat het nieuwe standaarden zijn. XML is een opmaaktaal voor het structureren van tekst. XML is afgeleid van Sgml en moet uiteindelijk Html vervangen. Java is een programmeertaal.
Toch komen Java en XML elkaar tegen, en wel in e-handelstoepassingen. De op tekst gebaseerde Html-standaard wordt al gebruikt om interactieve interfaces voor besteltoepassingen te bouwen. Java-applets worden ingebed in Html-pagina’s om ook wat verwerking aan de client-kant te kunnen uitvoeren. Aan de server-kant worden er Http-servers als applicatieserver gebruikt, zodat de applicatie met bestaande systemen geïntegreerd kan worden. De beste systemen gebruiken Java als ontwikkeltool op de server. Eén functie van XML is dat er een DTD beschikbaar is om bestaande Html-applicaties te ondersteunen, zodat browsers XML en XSL volledig ondersteunen en het gebruik van XML en Java aan de client-kant een natuurlijke stap is in de ontwikkeling van een e-handelsapplicatie.
De Java-code op de server-kant gebruikt EJB-omgevingen voor run-time support, geen Http. Maar de Java-code op de applicatieserver moet toegang hebben tot een breed scala aan nieuwe en bestaande back-end diensten. Denk hierbij aan TP-monitors, databases of specifieke subsystemen voor het uitwisselen van berichten. Bovendien moeten de Java-applicaties de inhoud van berichten kunnen bepalen. Meestal worden er over het formaat afspraken tussen verschillende applicaties gemaakt en kunnen veranderingen in de database de oorzaak van veel problemen zijn. Hier gaat XML een rol spelen, omdat het met de juiste DTD’s gebruikt kan worden om de inhoud van de berichten op een duurzame manier te definiëren. De conclusie is dat XML en Java nauw samenhangen en dat is een goede zaak. XML voor de data, Java voor de verwerking: een prima basis.
Daarmee houdt het niet op. XML wordt op dit moment gebruikt om documenten aan te maken en vervangt daarmee Sgml. Alleen grote organisaties gebruiken gestructureerde documenten, omdat Sgml-tools duur en ingewikkeld zijn. Moderne XML-editors zoals Stilo Webwriter of Xmetal maken het gebruik van gestructureerde documenten eenvoudig en goedkoop in combinatie met XML-servers. Dit leidt tot de situatie dat in XML geformatteerde gegevens verwerkt moeten worden om met andere systemen geïntegreerd te kunnen worden. Naarmate op XML gebaseerde documentsystemen meer en meer de plaats innemen van de huidige fileservers en tekstverwerkers, zullen ze meer behoefte krijgen aan geïntegreerde verwerkingsmogelijkheden. Het ligt voor de hand dat die mogelijkheden gebaseerd zullen zijn op Java. Het goede nieuws is dat alle standaarden die op dit moment ontwikkeld worden (zoals XMI, IIOP en extranet/EDI) allemaal rekening houden met de potentiële kracht van de combinatie Java/XML.