J2EE Application Server Evaluations

The following list outlines the details for some of my personal preferences for different types of J2EE sites. I hope that you will do further exploration to ensure that you find the right product for your work [1]. Each app server listed in this section is accompanied by some similar products (at the end of the table) that should help get you started with some comparisons. Subjective or rapidly changing criteria are left blank and are not included in this review. If you were relying on these reviews, you should flesh out the details quite a bit (i.e., the degree of server-side debugging varies quite a bit for different IDE and server tools).

Group

Criteria

Learning

Small Intranet

Small Internet

Large Intranet

Large Internet

Product Info Vendor Evermind Data Allaire Apache BEA SilverStream
Product Orion JRun Enterprise Tomcat Weblogic Server SilverStream
Version 1.3.8 3.0 3.2 5.1 3.7 [3]
Costs and Licensing [2] Cost per CPU ~$1.5K per server ~$5K Free ~$10K ~$15K
Cost per server ~$1.5K N/A Free N/A N/A
IDE costs[11] - - - - -
Developer licenses Free Free (performance-limited, IP-limited) Free $2-3K[2] N/A
Lightweight versions No[7] Yes (no EJB/JMS, JTA, Clustering in JRun Pro) No Yes (no EJB in Weblogic Express) N/A
Compliance J2EE Licensed No Yes[13] No Yes Yes
J2EE Certified No No No Yes Yes
Servlet version 2.2 2.2 2.2 2.2 2.2
JSP version 1.1 1.1 1.1 1.1 1.1
EJB version 1.1, partial 2.0 1.1 N/A 2.0 1.1
JMS info 1.0 1.0 - 1.0 1.0.2
Scalability and Availability Clustering Yes Yes No Yes Yes
Development Efficiency On-line support Yes Yes (Very Good) Yes Yes (Excellent) Yes
IDE/server integration[11] - - - - -
Multi-app Server[8] Yes Yes Yes Yes Yes
Win2000 Support Yes Yes Yes Yes Yes
On-line source archives[9] Yes, but tutorials and examples still growing Yes Few Yes Yes
Run-time server debugging Yes Yes Yes Yes Yes
Platform and JDK Support[5] Supported JDKs Partial JVM test of Sun Java2, IBM 1.3, Appeal JRockit; Rich proprietary API included [4] Only 1.1 or later specified; no vendors mentioned Only 1.1 or later specified; no vendors mentioned BEA has provided a very specific chart outlining JDK support for combinations of 1.1.7, 1.2.1, 1.2.2, and others depending on the OS. 1.2.1/1.2.2 depending on OS
Solaris Yes Yes Yes Yes Yes
Linux Yes Yes Yes Yes Yes
MacOS No No No No No
Net/FreeBSD Yes No Yes No No
HP/UX Yes Yes Yes Yes Yes
Tru64 Unix No Yes Yes Yes No
AIX No Yes Yes Yes Yes
AS400 Yes No Yes Yes No
SCO Unix No No No Yes No
Windows Yes Yes Yes Yes Yes
SGI IRIX No Yes Yes Yes No
Performance Connection pooling Yes Yes No [12] Yes Yes
Optimized JDBC drivers No No No Yes Yes (Oracle optimized driver)
Transaction support Yes Yes (Full JTA1.0/XA-compliant) No Yes Yes
Web-integration efficiency Provides own efficient Web server Optimized connectivity for IIS, NS, Apache, iPlanet, and Zeus Integrates well with Apache, IIS, and NS although not nearly to the same performance as other options listed here Depends on OS and version, but generally supports iPlanet and Apache in addition to its own Web server Not confirmed
Administration Remote console Yes Yes (Web-based) No Yes Yes
Full command-line Yes Not confirmed No Partial Yes
Text configuration Yes Not confirmed Yes Yes N/A
Monitoring tools Yes (partial monitoring through orionconsole.jar) Yes, but only confirmed for JSP/servlet (could not find EJB and load-monitoring tools) No None found Yes
Deployment admin Yes Yes (Web-based) No Yes Yes
Support Newsgroup Activity Low to Medium Medium Medium High Low
Internet SE presence Medium Low High High Low
Unofficial support sites No No[10] No No[10] No
Message boards Yes Yes Yes Yes No
Official support site Yes Yes Yes Yes (Excellent) Yes (Excellent)
Track Record History of company Unknown; short to my knowledge Long history through Cold Fusion and beyond Apache very active on the Internet as the Apache foundation (1999), and before that as the Apache group (1995/96) Large publically held company; around since '95 Public since mid-1999, incorporated in late 1996
History of product Very well respected and adopted, smaller track record than some of the others Relatively new compared to their flagship, Cold Fusion Evolved independent from JServ, and is positioned to replace JServ Large marketshare; product started as M3 in 1998; growing experience from earlier Tuxedo development Product has been evolving since late 1997
Alternatives JRun Developer License,
Tomcat
Weblogic Express,
Orion Server,
Sybase Enterprise Server,
Oracle 9i App Server,
WebObjects (for Mac users)
None identified that are available in hosting plans IBM WebSphere,
SilverStream,
Haht Site,
iPlanet App Server
iPlanet App Server,
Bluestone e-Server

Notes:

[1]All details should be confirmed with vendors. Some of these evaluations are subjective and can also change over time. This is meant only to serve as a starting point for your research.
[2]All prices should be confirmed with vendors. Some of these are estimates or second-hand reports. Prices can often be negotiated and are often subject to change.
[3]At the time of this article's publication, 3.7 was in beta with release expected very shortly.
[4]Proprietary features often add value but also may tie you to the specific implementation, if your design does not hide these features with an abstracted layer.
[5]Not all platforms are tested with all JVMs. Check the vendor pages for specific information.
[6]Kawa was recently purchased by Allaire, so prices and support may change.
[7]Orion is free for non-commercial or development use.
[8]Muili-app serving is also called virtual hosting.
[9]You can find most J2EE technologies on a number of sites, but this item is meant to capture archives that show server-specific APIs and features. Generally these are provided by the vendor.
[10]App servers typically are not popular enough to get their own support sites. However, a number of these tools are frequently discussed on general Java and J2EE sites. Search for sites that suit your own needs.
[11]There are simply too many IDE options and configurations, with costs ranging from free to several thousand dollars. A few suggestions: Edit Plus as a good text editor, Kawa as a good and inexpensive J2EE IDE (see [6] for pricing comments), and Visual Cafe for full-blown J2EE with excellent WebLogic integration.
[12]Although Tomcat doesn't explicitly support connection pooling, it certainly will permit you to use Java and JDBC to create your own pooling management system.
[13]I was unable to confirm compliance but multiple sources, including FlashLine, indicated that this is accurate.