Best Practices | Knowledge Management | Security | Tutorials | Books | Tools

Intranet Journal

Home | Exchange | FAQ | Software & Standards

Free Software Profile: Enhydra 2.3

Page II

By Gilles Wagener, Consultant
(gwagener@techmetrix.net)

 
 
Platforms: All platforms supporting JDK 1.1.8
Origin: Lutris Technologies and independent developers
License: Enhydra Public License, based on the Mozilla Public License
Support: Lutris Technologies provides commercial support and mailing lists.
URL: http://www.enhydra.org/
  *Note: Enhydra 3.0 has been available on the official Web site since April 17, 2000. A complete listing of new functionality can be found at: http://www.enhydra.org/software/enhydra/Enhydra_3.0.html

General Overview

Lutris Technologies has been writing its Web applications with Java since early 1996. At that time, the current Web development solutions (servlets and JSP) did not exist and Lutris was therefore forced to develop equivalent solutions. Lutris Technologies did not always give access to the source code of its application server, but the company decided to do so in the beginning of 1999 with its version 2. The reactivity of the community of the developers using the product along with their willingness to contribute to Enhydra's improvement were the main reasons behind Lutris' "freeing" of the source code.

Historically speaking, Enhydra is the oldest free Java application server. Several hundred independent developers have come together around the program and use the newsgroups as a medium for communicating between one another and with new users. Many of these developers have also made available applications they have developed with Enhydra. By April 2000, the current version of Enhydra had already been downloaded from the official Web site nearly 35,000 times.

During the course of 1999, Lutris announced a major partnership with Bullsoft and the France Telecom R&D which would allow for the integration of BullSoft's EJB server, Jonas; France Telecom R&D's Jonathan ORB and Enhydra so as to offer a tool with support for the Java 2 Enterprise Edition, including EJB, CORBA, JNDI, JTA, and servlets." TOP

Architecture and Functionality

Enhydra stands out from other application servers for historical reasons. Neither the servlet API nor JSP existed when its development began; Lutris Technologies had to develop features enabling a clear separation of the application interface and processes. The company company has evolved its technology to solve this business problem over the last few years from its initial JOLT/JDDI technology, a precursor to JSP and servlet support, to its preferred methodology today using XMLC. For backward compatibility reasons, Enhydra continues to support JOLT/JDDI, however the product clearly favors the use of XMLC due to its superior standards support for the Document Object Model from the W3C.

XMLC is based on a compiler that generates a Java object from a simple HTML page. Lutris Technologies respects W3C's HTML recommendation and uses the ID attribute of HTML tags (which is optional) to identify each object on the page. For example, when creating a field that must be filled in dynamically by Enhydra, one uses standard HTML syntax within the page in question:

<INPUT NAME="Name" ID="Field1">

The XMLC compiler takes care of transforming this input field into a DOM object, which can then be accessed in the servlet that manages the requested URL. When the query is executed, the Field1.tohtml() method replaces the empty field with the field that has been filled in with the value of the Field1 object. Thus, this solution does not add any code to HTML pages.

With regard to database support and access, Enhydra provides a graphical design tool called the Database Object Design Studio (DODS). DODS provides a visual environment for rapidly generating Java object-to-relational mappings, which shortens development time and offers an Enhydra application easy migration from one database to another. The classes generated by DODS are manipulated by the Enhydra Database Manager, which handles connection pooling and caching of JDBC connections.

Enhydra is made up of a server that must be booted by the intermediary of a script file (sh), different frameworks and APIs (servlet, JDDI, XMLC), which are loaded by the server. The frameworks obviously include an administration console that produces an HTML interface and is thus accessible as soon as the server is booted. As there are numerous configuration parameters, manual configuration is reserved for experts, but at any rate, with the configuration application there is no need for this. This administration console also allows for the creation and management of new applications that are loaded automatically when the server is booted and that can be enabled or disabled via the HTML interface. Enhydra's Servlet Debugger is also part of this administration interface and makes it possible to debug servlets while a given user runs them. TOP


Enhydra's Administration Console.

Enhydra is without a doubt the most mature of the available free application servers, not only because of its long history but also because of the activity of the community surrounding this program. For developers with a strong knowledge of Java and HTML who prefer using tools they are already familiar with and therefore do not want an application server with an integrated development tool, Enhydra is a good choice. Enhydra is very open and closely linked to Web standards. Moreover, each of its components is entirely optional: with Enhydra it is possible to develop applications using only the servlet API, which makes the applications in question portable to any other application server. Conversely, it is also possible to base application development on the frameworks and APIs furnished by the product.

Distribution

  • Enhydra can be downloaded from the official Web site:
    http://www.enhydra.org/. It is also available on the RedHat professional distribution CD.
  • Enhydra mailing lists include many experts and are extremely active. Lutris Technologies provides commercial support and specific development should the need be.
The Pros
The Cons
  • XMLC is an elegant and original solution.
  • DODS makes separating processes easier.
  • Enhydra runs alone or with another HTTP server.
  • New Wireless Markup Language support has been added to Enhydra 3.0 for delivering wireless Internet applications to cell phones, automobiles and PDAs.
  • No load balancing, as it is a mono-server architecture. However, with Enhydra 3.0 new cluster support has been added for load balancing across multiple servers. This new technology is called Enhydra Director.
  • Does not yet support EJB or CORBA (in progress).

[ < The End of Software Vendors' Absolute Reign]

TechMetrix Research is a technically focused analyst firm focused on e-business application development needs. Based in Boston, Mass., the firm publishes comparison reports and product reviews designed to aid enterprises with decision making and to keep pace with the fast-moving e-business market.

TechMetrix is a U.S.-based subsidiary of SQLI, a European company that offers on-site development services to international organizations. SQLI specializes in e-business project development.



Copyright 2002 Jupitermedia Corporation, All Rights Reserved.
Legal Notices | Licensing, Reprints, & Permissions | Privacy Policy | Advertising on Intranet Journal
Home | eXchange | F A Q | Find | Register |