It all depends upon individual choice..but perhaps if someone is looking ofr a freeware Tomcat is the choice..but in commercial one we are using JRUN and found quite comfertable for commercial usuage... regards, Arun
... and just a plug for my app server --> Check out the HP Application Server -- It also implements the JSP 1.2 and Servlet 2.3 specs... and it too is FREE for development or production use. -- Plus is covers EJB 2.0 and other J2EE 1.3 specs. You can also scale it down to only use JSPs and Servlet to make the footprint of the application server smaller.
You can't really go wrong with Tomcat since it is the official implementation of the Servlet 2.3 and JSP 1.2 specs but another engine that supports the latest specs is Caucho's Resin. It has very good XML/XSL/XSLT support and some other nice features such as automatic recompilation of servlets and beans when their source changes.
The answer, of course, depends upon your needs. At home for my "hobbyist" work, I use tomcat. At work, we use Caucho Resin. Resin seems pretty fast and is particularly good at figuring out when it needs to restart itself because of a change in its environment (new .war file dropped into the appropriate directory, for example). bear [Added:] P.S. Eric and I apparently had the same thoughts at the same time! [ April 24, 2002: Message edited by: Bear Bibeault ]
I have also started my initial development with Tomcat, and quite frankly I liked it. Earlier for servlets (almost 1 year ago) I had used JRun, which was also good at that time. Recently during an interview I was asked abt weblogic, websphere etc. I tried discussing/reasoning with that person abt Tomcat, also the fact that most of my clients were reluctant to shell out that kind of money when such a good server is available in tomcat, but in vain.... (They wanted someone who "knows" weblogic) How much difference does it really make? Moreover, is it really difficult to learn and use weblogic or sth similar once you know servlets/JSP well and comfortable with sth like Tomcat? TIA, - Manish
Caucho.com's Resin is great for development, and IMO easier to use than Tomcat. Haven't used it in production but I suspect it would run great. They have an EJB engine, including CMP, that is maturing nicely and is probably good for EJB work. They use a different protocol for communicating with EJBs, but Caucho claims it's a lot faster. Resin has just passed the 1000th paid customer mark, and some big names use it, like AltaVista. Oh, and their XML parser is about the fastest you can find ANYWHERE! Check it out if nothing else.
CJP (Certifiable Java Programmer), AMSE (Anti-Microsoft Software Engineer)
Author of Posts in the Saloon
NGASI (Next Generation Application Server) Previously called "ELSE", and before that "JAWS". A low priced servlet engine that supports Servlet API 2.2 and JSP 1.1 and is optimized to support many virtual hosts and contexts on one or more CPUs. A license for use without support is just $99 for up to 1000 contexts, and with support is $499. 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 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. Supports Servlet API 2.2 and JSP 1.1. Has build-in XMLC and WML support. Can also works as an add-on for Apache, iPlanet/Netscape, and IIS. Free. Commercial support can be purchased. 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 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. The Tomcat Server, from Project Jakarta Tomcat (more information above) also runs as an Apache module, with work being done to work with Netscape, IIS, and others. Plus, since the project is open source, if your server isn't listed, it's only a simple matter of programming... Java-Apache Project's JServ Module A servlet engine that adds servlet support to the extremely popular Apache server. The 1.1 release supports Servlet API 2.0. This product has been deprecated in favor of Tomcat but is still in wide use. Free, with source. Allaire'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. Enhydra An open source Java application server. Sponsored by Lutris. Supports Servlet API 2.2 and JSP 1.1. Has build-in XMLC and WML support. Works as an add-on for Apache, iPlanet/Netscape, and IIS. Free. Commercial support can be purchased. Servertec's iServer iServer (more information above) also works as a plug-in for Apache, Netscape, IIS, and AOL Server. 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 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.
The Tomcat Server, from Project Jakarta Tomcat (more information above) also works as an embedded engine. The docs aren't detailed, and there may be some small bugs since not many people use the server this way, but it's definitely possible. Servertec's iServer iServer (more information above) also works as an embeddable engine; license starts at $1,500 US to embed the product royalty free within an application. 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. Jetty Server (Please see the earlier listing in the "Standalone" section) -------------------------------------------------------------------------------- Embeddable JSP Engines A JSP embeddable engine provides support for JSP in a web server that already supports servlets.
GNUJSP 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 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.
Originally posted by Doug Wang: But how about JBoss application server, which is viewed as "Apache" in aplication server market.
I haven't used it myself, but I hear nothing but good about it. It won the Javaworld Editor Award 2002. And it's open source so you can fix bugs yourself, there's a big community to get help, you can buy support if you need it and it uses the most modern technologies (including JMX). It seems the best choice to me.
Wow paulocdl !!! That's the longest post I have seen Thanks for all the information, though I believe some bartender will ask you to comply with the javaranch naming policy. We'd love to have more such informative posts from you. Thanks, - Manish
Resin is at version 2.10 now. Caucho updates Resin quite frequently and is very responsive to bug reports. Somebody mentioned using Orion because it automatically redeploys a war file. Resin does this, too. Any change to a file causes a recompile/psuedo-redeploy to occur when a request comes in for a webapp. This includes .java, .jsp, web.xml, etc. Quite fast, and makes for quick development. It's had this feature for a LONG time. Easiest server to work with that I know of, but it sounds like Orion works well, too.
CJP (Certifiable Java Programmer), AMSE (Anti-Microsoft Software Engineer)
Author of Posts in the Saloon
Why am I so drawn to cherry pie? I can't seem to stop. Save me tiny ad!