This interview was conducted with the following representatives of the Java Server team at JavaSoft: Carole Amos, product line manager; Sandeep Khanna, engineering manager; David Brownell, staff engineer; and Satish Dharmaraj, project leader and staff engineer.
PIC: I have the notion that server-side Java has been somewhat neglected up to this point. It has the potential for coming much more into the limelight and attracting a lot more interest. Any thoughts?
Carole: Back when the project was started, Java was very Web-oriented and people hadn't started pushing it into the enterprise or enterprise applications yet. So the server group started building a lot of foundation classes and capabilities, and the project kind of morphed a couple of times. Alpha went up on the Web site maybe two months after JavaOne last year, and that helped us get a lot of good feedback about what the product needed to do.
Satish: Alpha Two came out shortly thereafter, in October 1996.
Carole: Then we really started focusing in on the underlying foundation, the capabilities people wanted as the basis for their server, things like administration, security, and all of the server management: thread management, connection management, session management. In the meantime, people were working on creating services on top of this stuff: HTTP and proxies specifically for the Java Web Server. So we went out beta in early March with the Java Web Server, and we are now working on finalizing a Java Server Toolkit product.
[A presentation is displayed on a laptop, showing the Java Server architecture.]

This lays out how we think of the Java Server architecture -- protocol-independent foundation classes with the Server API on top of them. [The diagram shows the following foundation classes: Admin, Security, Thread Management, Connection Management, Session Management, and Custom Classes, with the Server API on top.] This is what we're going to provide to the marketplace as the Java Server Toolkit. And on top of that we build HTTP and proxy services and the binary of all this is the Java Web Server.
Now we see people using this by either taking the binary product and adding capability to it through servlets, building their own service packages out of servlets and redistributing them, or actually licensing the Server Toolkit and building servers based on that. And we're seeing these going into middle tiers, if you think of a three- or four-tier client/server architecture. So these are connecting basically with applications either to database servers on the backend or other databases.