Preface
In late 1996, Java on the server side was coming on strong. Several major software vendors were marketing technologies specifically aimed at helping server-side Java developers do their jobs more efficiently. Most of these products provided a prebuilt infrastructure that could lift the developer’s attention from the raw socket level into the more productive application level. For example, Netscape introduced something it named " server-side applets”; the World Wide Web Consortium included extensible modules called “resources” with its Java-based Jigsaw web server; and with its WebSite server, O’Reilly Software promoted the use of a technology it (only coincidentally) dubbed “servlets.” The drawback: each of these technologies was tied to a particular server and designed for very specific tasks.
Then, in early 1997, JavaSoft (a company that has since been reintegrated into Sun Microsystems as the Java Software division) finalized Java servlets. This action consolidated the scattered technologies into a single, standard, generic mechanism for developing modular server-side Java code. Servlets were designed to work with both Java-based and non-Java-based servers. Support for servlets has since been implemented in nearly every web server, from Apache to Zeus, and in many non-web servers as well.
Servlets have been quick to gain acceptance because, unlike many new technologies that must first explain the problem or task they were created to solve, servlets are a clear solution ...