In a recent editorial meeting with the JDJ staff I broached the subject of open source software with editor-in-chief, Alan Williamson. I freely admit that I was baiting him - but Alan was favorable towards it. It's a touchy subject for any technical person, sort of a motherhood and apple-pie thing.
Well, here it is folks, I've spent much of my technical career working for software vendors and I'm not so foolish as to bite the hand that has fed me in the past. The old adage that you get what you pay for is as true as it ever was. Before you start flaming me, let me just say that I'm not an "Open Source Luddite" and I freely admit to using the occasional open source product (Web browser, e-mail client, and HTTP server). In general, I prefer to use commercial grade products for everything else. Thus, I was more than happy to dump my copy of Tomcat into the virtual shredder and try out New Atlanta's much-vaunted ServletExec 3.1 Application Server.
New Atlanta makes the ServletExec product available for download from their Web site. It comes packaged in a 3MB InstallShield download kit for Windows (and shell scripts for UNIX). ServletExec can be installed as both a separate application server (Apache, Microsoft IIS, iPlanet Enterprise Web Server), or as an in-process Servlet engine (IIS/iPlanet). The installation expects you to have a JDK preinstalled on the server, but otherwise it's a breeze. The ServletExec developers jumped on the Servlets bandwagon way back in 1997, and their technical acumen shines through in the product.
I chose to install ServletExec as an application server and connect it to my Apache Server. New Atlanta didn't support the Apache release that I was using, so I dropped back to 1.3.14 in order to proceed with my tests. Once I had the correct version of Apache running, the ServletExec install went like clockwork. It correctly configured ServletExec to service Servlets and JSPs on behalf of my Apache Server. In fact, you can even run the installer on an ongoing basis to move Web application definitions from the ServletExec configuration over to the Web server's configuration files. I'd like to see this clever little configuration program uncoupled from the installation program and offered as a separate utility.
I'd have to say that ServletExec was one of the easiest products to install and configure in the application server category. The panels were easy to follow and the installation didn't wipe out any of my preexisting Apache settings (as some other products have done). The postinstallation process is also a breeze. ServletExec's management console (as shown in Figure 1) provides access to all the various capabilities of the server. You can control the depth and content of server logs, change the JVM, and configure Web applications (WARs) directly from the browser interface.
I was able to create a couple of quick JSP pages, package them into a WAR file, and create my own Web application in a matter of minutes. Experienced Java Servlet developers will find that they can control lots of detailed settings within the ServletExec environment, including servlet chains, servlet aliases, and the ability to define multiple logical "servers" within a single server instance. You can create separate ServletExec instances and tie them to different applications - even on the same machine. Thus, it's a simple process to host applications for multiple audiences on the same set of hardware.
You have complete control over the session-tracking environment, including the ability to control session persistence across server restarts. New Atlanta also provides lots of sample servlets. My only real complaint is that ServletExec doesn't provide any direct support for JDBC. If you want connection pooling or JDBC drivers, you'll have to use some additional third-party solutions. (ServletExec 4.0 will provide support for managing JDBC resources.)
ServletExec 3.1 is a compelling product for those organizations that want to build dynamic Web sites and applications - without the cost and overhead of an enterprise-class application server. Keep a sharp eye on New Atlanta. They recently cancelled plans to merge with Unify Corporation, and it's my guess that the company will be hitting the market with renewed vigor as a result of this change in strategy.
Jim Milbery is a software consultant based in Easton, Pennsylvania, with Kuromaku partners LLC. He has over 17 years of experience in application development and relational databases. He is the applications editor of Wireless Business & Technology, the product review editor of Java Developer's Journal, and the author of Making The Technical Sale, Jim can be reached via the company Web site at http://www.kuromaku.com.
New Atlanta Communications, LLC
1041-D Cambridge Square
Alpharetta, Georgia 30004-1871
e-mail: [email protected]
Phone: 678 366-3211
Dell 1400 PowerEdge 1 CPU (795MHz), Windows 2000 Server SP1 256MB RAM