|
Servlet Engines
Servlets are supported in nearly all web servers, from Apache to Zeus. Some
web servers support servlets right out of the box. We call this type of
server a Standalone Servlet Engine. Other web
servers require a third-party plug-in to support servlets. We call the
servlet-enabling plug-in an Add-on Servlet Engine.
Finally, if you want to write your own server with servlet support, you can
use what's called an Embeddable Servlet Engine.
NEW: I've added a section for JavaServer Pages
(JSP) plug-in engines.
This page is a compiled list of the most frequently used servlet engines. If
your favorite engine isn't listed, please
let me know.
Standalone Servlet Engines
A standalone servlet engine is a server that includes built-in support for
servlets. Such an engine has the advantage that everything works right out of
the box. One disadvantage, however, is that you have to wait for a new
release of the web server to get the latest servlet support.
-
The Tomcat Server, from Project Jakarta
(Updated!)
-
The open source reference implementation for servlets and JSPs. Always
supports the latest Servlet API revision. It's written entirely in Java.
Source code is available under the excellent (better than GPL) Apache license
as part of Project
Jakarta. Version 3.0 has been released. It's undergoing rapid development
(you can help out if you'd like) for future versions.
-
Sun's JavaServer Web Development Kit (JSWDK)
(New!)
-
The previous reference implementation for servlets and JSPs. The code for
the JSWDK has been released to become the Tomcat server listed above. You
can download the JSWDK 1.0.x release for free and redistribute the class
files as part of your product for free as well. It's currently more stable
than the Tomcat server which is undergoing rapid development for an upcoming
release.
-
Sun's Java Web Server
-
The previous (unofficial) reference implementation for how a servlet
engine should support servlets. Written entirely in Java (except for two
native code libraries that enhance its functionality but are not needed).
Free 30-day evaluation. Free educational license. $295 commercial.
Officially "end of lifed" in favor of Netscape products due to the
Sun-Netscape Alliance.
-
Caucho's Resin Server
(New!)
-
An Open Source servlet engine that prides itself on performance. Works
standalone or coupled with Apache, IIS, or iPlanet/Netscape. It can also be
used to add JSP support to any JSDK 2.1 engine. It integrates XML, XSL, and
JavaScript inside the engine. Free under the "Open Source" Caucho Public
License, although they politely request commercial users pay a license fee.
-
Oracle Application Server
(New!)
-
Oracle 8i and the Oracle Application Server have built-in support for
servlets and a downloadable JSP 1.0 engine. Check out their JDeveloper 2.0
tool if you plan to go this route. No pricing information seemed readily
available.
-
The Sun WebServer
-
A web server designed to efficiently support thousands of virtual hosts.
Works only on Solaris, but includes kernel hacks to improve performance. The
just released version 2.1 supports Servlet API 2.0. Available as part of the
Solaris ISP Server ($2,485) or Easy Access Server ($595). Both bundles
include additional software products. Officially "end of lifed" I believe in
favor of Netscape products due to the Sun-Netscape Alliance.
-
ATG Dynamo Application Server
-
An application server from ATG (Art Technology Group) written in Java
with support for servlets. Free evaluation. Contact for pricing.
-
BEA Weblogic Application Server
-
A high-end server written entirely in Java that supports servlets, among
other things. Formerly
Weblogic's Tengah Application Server. $4,000.
-
The World Wide Web Consortium's Jigsaw Server
-
A full-featured web server written in Java that serves as the reference
HTTP/1.1 implementation. Free.
-
O'Reilly's WebSite Pro
-
The first server not written in Java to provide built-in servlet support.
Works with Windows 95 and Windows NT. $799.
-
Zeus Web Server
-
The web server commonly considered the fastest available, now with servlet
support. $1699 per machine.
-
iPlanet (Netscape) Web Server Enterprise Edition
(New!)
-
The Sun|Netscape Alliance released the iPlanet Web Server Enterprise Edition
(iWS) 4.0. This is the upgrade from Netscape Enterprise Server 3.x. It
supports Servlet API 2.1 that should be really good. They're so proud of
their servlet implementation that in the FAQ question "Aren't there several
freeware contenders?" their answer is "When measured against freeware
competitors like Apache and bundled products like Microsoft IIS, iPlanet Web
Server 4.0 demonstrates an unparalleled Java implementation and considerable
performance advantages". $1495 per CPU.
-
iPlanet (Netscape) Web Server Enterprise Edition for Linux
(New!)
-
The Sun|Netscape Alliance has an alpha of the iPlanet Web Server Enterprise
Edition (iWS) 4.1 for Linux. It supports Servlet API 2.2 (except for WAR
files) and JSP 1.1PR1. It's not clear if there are 4.1 alphas for other
platforms.
-
Netscape Enterprise Server 3.5.1 and 3.6
(Updated!)
-
The most popular web server to provide built-in servlet support.
Unfortunately, NES 3.x supports only the early Servlet API 1.0 and
suffers from a number of bugs so significant it's almost unusable. Users of NES
3.x should upgrade to iPlanet 4.0 (above) or use an add-on servlet engine.
$1295 per CPU.
-
Inprise Application Server
(Updated!)
-
Inprise Application Server 4 includes support for J2EE including servlets 2.1
and JSP 1.0. Pricing appears to be $895 per developer and $8,500 per CPU for
deployment. Check out
their corp sales web site for more information. An
evaluation download is available.
-
GemStone/J Application Server
(New!)
-
The GemStone/J Application Server supports Servlet API 2.1 and JSP 1.0. The
base technology is New Atlanta's ServletExec, but GemStone/J adds
multi-process support and automatic HTTP session state distribution among
multiple JVMs running servlets. For pricing, call 800-243-9369 or email
info@gemstone.com. If you are
quoted a price, let me know and I'll post it here.
-
Gefion Software's LiteWebServer
(New!)
-
A pure Java web server that (as of 11/21) supports Servlet API 2.2 (PR1) and
JSP 1.1 (PR2). It's just 420K (130K without JSP), so it's well suited for
embedded systems and bundling with demos. For most uses it can be used free
of charge. Source is available with a support license, priced at $149
annually per copy or $1,600 for unlimited copies.
-
CtO-JStar (New!)
-
A commerical web server written in Java, announced at JavaOne '99. The
company says it "provides linear scalability for Java servlets". There's a
whitepaper on its architecture. Supports Servlet API 2.0 with 2.1 coming in
the last quarter of '99 along with JSP 1.0. Their slogan is "J-Star, for web
sites that must scale and cannot fail". :-) They say to call for pricing
and release information.
-
M5 Web Server
-
A commerical web server written in Java. Supports Servlet API 2.1 and
HTTP/1.1. Its security model is appealing: SecurityManager sandboxes and
supports throttling by virtual server (limiting denial of service attacks).
I also like its ability to compress output according to configurable rules!
15 day evaluation. Just $95.
-
Servertec's iServer (New!)
-
A small web and application server written in Java. Supports Servlet API 2.1
and HTTP/1.1. Can use a database for security controls and server logs.
Preview release is free, commercial license is $50, redistribution license is
$1,500.
-
LiveSoftware's JRun Web Server
-
Although it's best known as a plug-in (see below), JRun also includes a full
standalone web server. Lets you run a different virtual machine per virtual
host if you need. JRun is free for development, testing, and non-commercial
deployment and contains the full feature set of JRun Pro including JSP. JRun
Pro is $595 for commercial deployment and features unlimited concurrency.
-
Lotus's Domino Go WebServer
-
A popular web server with support for servlets. Works with most platforms.
$540.
-
Mort Bay's Jetty Server
-
An open source web server written in 100% Java designed to stand alone or be
embedded (thus shown again below). Claims support for Servlet API 2.1;
includes GNUJSP. No fee for use as it's distributed under the Open Source
Artistic license.
-
Paperclips Java Servlet Server 2.0
-
A free web server to run servlet. Written in Java; provided with source.
Version 2.1 will be GPL'd.
-
KonaSoft Enterprise Server
-
A Java application server with support for servlets. $4995 for 100-user
version.
-
EzWebTools Lightweight Servlet Engine (ELSE)
(Updated!)
-
Previously called "JAWS". A free (but not open source) servlet engine that
claims to support Servlet API 2.1 and JSP 1.0. Includes a security manager
that isolates servlets from one another. Currently in early beta.
-
Avenida Web Server
-
A small web server built around the servlet architecture.
-
vqServer
-
A small web server written in Java. HTML administration. Free.
Includes email support.
-
Serfler (New!)
-
A small web server written in Java "based almost entirely upon servlets".
Property file driven. Available under the Gnu Public License.
-
WebEasy WEASEL Application Server
-
Contact for information.
-
Tandem's iTP WebServer
-
A web server with servlet support for those with Himalaya systems.
Contact for pricing.
-
Novocode's NetForge
-
A web server written in Java. Free evaluation, free for non-commercial use.
$80.
-
Enhydra
-
An open source Java application server. Sponsored by Lutris. They're in the
process of migrating from the older Servlet API 1.0 to API 2.0. Free.
-
Locomotive
-
An open source Web application server. They support Servlet API 2.1 and are
actively working on 2.2. Tested to work with several JSP engine plug-ins and
on most major platforms. Also has hooks to plug-in to Apache and Netscape.
Free (open source).
-
Orion Application Server
(Updated!)
-
A pure-Java web server that is being written to support Servlet API 2.2 and
JSP 1.1, along with EJB 1.1, JTA 1.0.1, JMS 1.0, JNDI 1.2, JDBC 2.0,
RMI/IIOP, XML/XSL, and WAP. It's in beta. Will be a commercial product but
free for non-commercial use.
Add-on Servlet Engines
An add-on servlet engine functions as a plug-in to an existing server--it
adds servlet support to a server that was not originally designed with
servlets in mind. Add-on servlet engines have been written for many servers
including Apache, Netscape's FastTrack Server and Enterprise Server,
Microsoft's Internet Information Server and Personal Web Server, O'Reilly's
WebSite, Lotus Domino's Go Webserver, StarNine's WebSTAR, and Apple's
AppleShareIP. This type of engine acts as a stopgap solution until a future
server release incorporates servlet support. A plug-in also can be used with
a server that provides a poor or outdated servlet implementation.
-
Java-Apache Project's JServ Module
(Updated!)
-
A servlet engine that adds servlet support to the extremely popular Apache
server. The 1.0 release supports Servlet API 2.0. In the long term future,
this module will be replaced by Tomcat. Free, with source.
-
LiveSoftware's JRun Web Server
-
A plug-in designed to support the full Servlet API on all the popular web
servers on all the popular operating systems! The latest version includes a
simple web server for development purposes. JRun is free for development,
testing, and non-commercial deployment and contains the full feature set of
JRun Pro including JSP. JRun Pro is $595 for commercial deployment and
features unlimited concurrency.
-
IBM's WebSphere Application Server (ServletExpress)
-
A plug-in that's part of an application server. It supports the full Servlet
API on several popular web servers on several popular operating systems.
Includes support for JSP. $795 Standard Edition, $6,000 Advanced Edition.
-
New Atlanta's ServletExec
-
A plug-in designed to support the full Servlet API on all the popular web
servers on all the popular operating systems. Includes support for JSP.
$395.
-
Unicom's Servlet CGI Development Kit
-
A framework that supports servlets on top of CGI What it lacks in efficiency
it makes up for in ubiquity, and creativity. Free.
-
Gefion Software's WAICoolRunner
(Updated!)
-
A plug-in that supports most of the Servlet API on Netscape's FastTrack
Server and Enterprise Server versions 3.x, written in Java using Nescape's
WAI interface. Free. The author Hans Bergsten reports that the plug-in does
not work on iPlanet 4.0 "due to lack of WAI support in iPlanet 4.0 (it's no
longer bundled and requires you to purchase the Inprise ORB, making a free
servlet container add-on relying on it kind of a moot point)". This proves
why you should be wary of building on vendor-specific technologies. What was
free might start costing money.
Embeddable Servlet Engines
An embeddable engine is generally a lightweight servlet deployment platform
that can be embedded in another application. The application becomes the
true server.
-
Acme Acme.Serve
-
Jef Poskanzer's simple web server that runs servlets "more of less
compatible" with the Servlet API 1.0. Free.
-
Anders Kristensen's Nexus Web Server
-
A servlet runner that implements most of the Servlet API and can be easily
embedded in Java applications. Free, but the server can be used only for
non-commercial use.
-
Paralogic's Web Core Embeddable Server
-
A free but unsupported embeddable web server written in Java. It
incorporates parts of Acme.Serve. Free.
-
Mort Bay's Jetty Server
-
An open source web server written in 100% Java designed to stand alone or be
embedded (thus shown previously, above). Claims support for Servlet API
2.1; includes GNUJSP. No fee for use as it's distributed under the Open Source
Artistic license.
Embeddable JSP Engines
A JSP embeddable engine provides support for JSP in a web server that already
supports servlets.
-
GNUJSP
(Updated!)
-
This popular open source JSP engine lets you run JSPs on almost any web
server. The project was started by Vincent Partington, but after he gave up
active development many others stepped in and as of October 1999 have
released version 1.0. It supports JSP 1.0 on top of Servlet API 2.0 or 2.1.
(Support on API 2.0 won't be complete as it's not possible.) Free under the
GPL.
-
SJSP
(Updated!)
-
Formerly known as Sator, this engine supports JSP 1.1 atop Servlet API 2.0 or
later. You may wonder how that can work since JSP 1.0 and 1.1 depend on
Servlet API 2.1. The answer is that SJSP on top of Servlet API 2.0 doesn't
support JSP forward and include functionality. They also have a version that
supports JSP 0.92 legacy code. Free for development, contact for commercial
use. Commercial users get source.
-
zJSP
-
David Creemer's experimental JSP engine. Includes a program that converts
.jsp files to .java servlets directly. David claims zJSP is intended just
for him to play with JSP, but maybe you want to play too? Free.
|