Aan de reeks webpagina-technologieën heeft Microsoft in 1997 de Active Server Page toegevoegd. Dit is de opvolger van de beperktere IDC-pagina’s die bij NT Server 4.0 ‘uit de doos’ worden ondersteund. Egbert Nierop meent dat ASP als platform-onafhankelijk ontwikkel-tool dienst kan doen.
Wat is ASP, wat kan het en hoe kun je het vergelijken met andere technologieën? De afkorting staat voor Active Server Pages, waarbij ‘active’ voor dynamisch staat, met een knipoog naar de term Activex DLL’s – of Com-objecten die alleen voor server-applicaties bedoeld zijn en dus niet naar de console of naar het scherm schrijven.
Omdat het op Com gebaseerd is, kan een pagina een object aanroepen dat bijvoorbeeld op zijn beurt een database aanroept. Door deze objecten in een centrale server te plaatsen ontstaat een heel schaalbare situatie. Men kan namelijk een willekeurige hoeveelheid webservers voor een aantal centrale Com-servers (of transactie-servers) plaatsen, die op hun beurt hun eigen zaakjes met een willekeurig databasemanagementsysteem via Ole-DB (opvolger van Odbc) of Odbc kunnen regelen.
Taalonafhankelijke interface
Ik heb nu uitgelegd in welke omgeving je het kunt plaatsen. Maar wat is ASP nu precies? Misschien is het goed om uit te leggen wat het n�et is.
Ten eerste: ASP is geen taal of serverprogramma! Het is daarentegen slechts een ‘houder’ voor diverse talen zoals Javascript, Visual Basic-script en Perlscript. Ten tweede: ASP is niet hetzelfde als of gebonden aan de Internet Information Server versie 3.0 of hoger van Microsoft. Het draait ook op webservers van Netscape, O’Reilly en Apache. In de grond van de zaak is ASP een taalonafhankelijke interface tussen de webbrowser van het werkstation en de webserver. Met deze interface kan de programmeur met behulp van vijf standaard objecten vragen stellen aan de browser-client en aan de webserver.
En wat kun je ermee doen? Uiteraard kun je er gewone webpagina’s mee maken zoals ze ook te zien zijn bij bijvoorbeeld World-online, Het Financieele Dagblad en de AEX-website. Je kunt er ook nog eens op zeer eenvoudige wijze een ‘gateway’ mee maken naar andere protocollen. Denk maar eens aan de binnenkort te presenteren oplossing van Microsoft waarbij Hotmail met hulp van ASP-pagina’s mail-bezorging kan afhandelen. De programmeurs van het protocol kunnen hierdoor het http-protocol benutten en hoeven zich alleen over de implementatie van het gateway-protocol druk te maken en niet over prestaties, encryptie en beveiliging, internationalisering van karakters en ‘resource-‘ en ’thread-management’ die bij iedere publieke dienst noodzakelijk zijn. Deze laatste zijn overigens uitstekend, zeer stabiel en compleet verwezenlijkt op de Information Server versie 4 van Microsoft, maar ook bij webservers van concurrerende partijen.
De stelling is dat ASP daardoor een uitstekend centrale en schaalbare service vormt, waarbij de ontwikkelaars veel vrijheid hebben in het kiezen van ontwikkeltools die ASP en databases snappen.
Rest nog het platform. Zijn we daar vrij in? Kunnen we bij deze ontwikkeling stellen dat het Windows-georiënteerd is?
Andere geschikte platformen
Helaas voor Microsoft en gelukkig voor ons; dit is niet ‘Windows-only’! Waarschijnlijk onbedoeld heeft Chilisoft (zie http://www.chilisoft.com) deze interface voor andere platformen geschikt gemaakt, zoals voor IBM AIX/OS 390, Sun Solaris, en NT.
Van deze platformen worden diverse webservers ondersteund zoals Apache, Lotus, Netscape en O’Reilly. Het is niet mogelijk de Active Server Page ‘ASP’ te noemen zonder ook Com op zulke platformen te implementeren. Dat heeft Chilisoft dan ook gedaan. Chilisoft meent namelijk dat het ASP dat zij heeft gepoort, 100 procent compatibel is met de ASP-versie van Microsoft. Ergens op hun website staat dan ook de ons bekende ‘write once run everywhere’.
En dit laatste verbaast mij bijzonder, omdat Microsoft hier niet op hamert. Het zou namelijk een strategisch instrument kunnen zijn – of heb ik iets gemist? ASP is platform-onafhankelijk omdat het VB-script en Javascript (dat ook nog eens aan de Ecma-standaard voldoet) minimaal moet ondersteunen, omdat ze kosteloos als C++ broncode in licentie verkregen kunnen worden. Wanneer dus ASP samen met VB-script en Javascript wordt gepoort, is dit een tamelijk platform-onafhankelijke oplossing.
Daar komt nog bij dat ‘scripting’ als taal steeds populairder en krachtiger wordt. Men kan er zelfs object-klassen mee definiëren in XML. Dit laatste vormt echter weer een andere zijdelingse maar toch zeer belangrijke ontwikkeling waar weer vele pagina’s mee te vullen zijn.
Egbert Nierop
Amsterdam