Table of Contents
Enhydra 6.0 differs a lot from the previous Enhydra versions. It is an application server which consist of application framework (collection of Java classes, which provide the runtime infrastructure for Enhydra applications) and Enhydra tools used for Enhydra applications developing. It supports servlet 2.3 specification.
Servlet container is not a part of Enhydra any more, but it is needed for running Enhydra applications. Any servlet container that supports servlet 2.3 specification can be used for running Enhydra applications. Two server containers are included with Enhydra distributions: JOnAS Tomcat and JOnAS Jetty.
The minimum recommended system configuration is:
128 MB RAM
200 MHz processor or better
500 MB disk space (see note below)
Java Development Kit (JDK) 1.4.x
JDBC-compliant SQL database for database access
NOTE: The disk space specified above reflects the minimum system requirements to install and run the Enhydra example applications. A minimum installation consists of:
JDK 1.4.x (approximately 70 MB)
Enhydra 6.0 (approximately 430 MB)
This chapter lists the new or updated features associated with Enhydra 6.2-2.
News and bugs fixing (not in Task list):
IMPORTANT: Since this release Enhydra Enterprise doesn't package JOnAS distribution file. Therefore, to proceed with Enhydra Enterprise installation you are obligate to have either JOnAS-Tomcat or JOnAS-Jetty 'tgz' distribution file present on your local file system (developed on JOnAS 4.3.2 version)!
EnhydraDirector (EnhydraConnector) maintenance - release 6.2-2 is included in this release.
DODS maintenance - release 6.2-2 is included in this release.
Octopus maintenance - release 3.2-2 is included in this release.
EAF maintenance - release 6.2-2 is included in this release.
EnhydraDemos maintenance - release 6.2-2 is included in this release.
XMLC maintenance - release 2.2.6 is included in this release.
Converter - new enhydra module that enables automatic configuration conversion from CONF to XML configuration file. Basically, it is 'web.xml' generation (based on application CONF configuration file) tool.
Windows Setup - During uninstallation process removal of Enhydra elements from LOCAL MACHINE - Path environment variable used to invoke corruption of Path environment variable (bug fix in uninstallation process).
IMPORTANT NOTE - Enhydra updates JOnASs 'org.objectweb.jonas.jmx.JmxServiceImpl' class (to CVS version 28.02.2005.). We had naming problems during registration of our (Enhydra) SPI implementation with originally existing code.
IMPORTANT NOTE - To make Enhydra-Connector fully functional for JOnAS-Jetty distribution option we had to patch Jetty's 'org.mortbay.jetty.servlet.AbstractSessionManager' class.
During creation of new Session object, AbstractSessionManager generates session ID by using 'HttpServletRequest.getRequestedSessionId()' method call only if that session ID exist in global session ID Map. To make Enhydra Director functional, session ID must be 32 characters long and to end with (Enhydra Director) specific tag. This way, existing implementation of AbstractSessionManager doesn't’t leave possibility of session creation with predefined IDs. With our patch we enabled (back to previous versions) the session creation with 'HttpServletRequest.getRequestedSessionId()' even when session ID doesn't’t exist in global ID Map.
JOnAS-Jetty 4.3.2 release - during server shutdown some servlets don't receive 'destroy' method call. That is the reason of irregular application shutdown which for applications that use HSQL databases results with inappropriate HSQL server shutdown (data loss). This problem persists only when enhydra JOnAS-Jetty binary distribution is used during Enhydra Enterprise installation.
This chapter lists the new or updated features associated with Enhydra 6.0-1.
(Task Id: 1918) Integrated all implementation changes from Enhydra 5.1-16 (since Enhydra 5.1-1)
News and bugs fixing (not in Task list):
New setup for Enhydra-Enterprise (Components Setup) - Change or Remove (Add/Remove Programs option) installed configuration!
New, modular, Enhydra distribution structure:
Development and runtime distributions for both Enhydra-Enterprise-Tomcat and Enhydra-Enterprise-Jetty (Windows and Linux).
New modular DODS release 6.0 - included in this Enhydra Server release.
EnTray - bug fix which implements JMXConnector closure (potential memory leak).
SessionViewer - Integrated new, administration, enhydra application (for Tomcat release only). Small Enhydra application which enables overview of active session parameters.
Debugger - Integrated new, administration, enhydra application (for Tomcat release only). Small Enhydra application integrated with purpose to make application debug process easier.
In EnhydraIDE (Eclipse 3.0 with integrated Enhydra Kelp) integrated four, more than useful, plugins:
JOnAS (Tomcat and Jetty) updated to version 4.1.2
JIVAN updated to version 1.0.0
XMLC updated to version 2.2.5 (public release)
FopApplet - On some browsers there was a problem with applet loading which is resalved in new version.
enhydraFlash - application had a Flash loading problem which is resalved now.
This chapter lists the new or updated features associated with Enhydra 6.0-beta1.
(Task Id: 471) Enhydra is completely independent from DODS during compile/build and runtime. So if DODS is not used we do not need the jars. File "eaf_api.jar" contains only Database manager API (interfaces and exceptions).
(Task Id: 474, 1316, 1357) New Admin application and cacheAdmin integration, based on JMX.
(Task Id: 649) JDDI support is removed.
(Task Id: 955) Completely new EnTray application written. It's now Java application and talks to Enhydra 6 through JMX (uses MX4J).
(Task Id: 1057) Windows source exe file for Enhydra 6.0 release are created using 7-Zip ver. 3.11 file archiver, with -sfx (Create SFX archive) switch.
(Task Id: 1361, 1369)New improved installation : Selection of http port, userid / password entry, service name, Multilanguage support, Enhydra splash screen on startup, Enhydra header image on each page, Finish page with appropriate options, Add options for manual choosing folder, which will be set as JAVA_HOME directory, Start Enhydra server as Windows system service.
(Task Id: 1367) Installation of Enhydra Conductor (MOD JK2 for Apache 2 or IIS web server) is being automatically started after finished enhydra installation (Windows). Installation of MOD JK2 for Apache 2 is provided for RedHat 9 as separated rpm package.
(Task Id: 1372) MBeans which reads size of PO and resources caches are implemented. These values are shown in new EnhydraAdmin application.
(Task Id: 1526) Comment: Some MBeans are implemented in Enhydra6.0. All configuration file entries are accessible and visible through them and jmx administration application. The Mbeans communicate with Enhydra application via notifications. The changes can be saved back to the configuration file.
(Task Id: 1531) Enhydra uses JNDI for reading application parameters. Created services providers for .conf and unpacked web.xml files. Datasource for an application can be entered in JOnAS Admin. More information in Enhydra6.0 configuration documentation.
(Task Id: 1533) Monolog implementation for EAF logging are included in EAF (Enhydra Application Framework)
(Task Id: 1603) EAF jars (all of them) are installed (Enhydra 6.0) in lib/ext (all jars in subordinate directories will also be loaded) directory and are shared between all applications.
Changed design of html and pdf document files. Pached stylesheets put in seperate directory.
(Task Id: 1794) Included new Zeus GUI application.
(Task Id: 1527) Documentation for new APIs and configurations (Session, Configuration, Logging and DatabaseManager) with sample configurations is included.
(Task Id: 1065) Jivan project is included. Simpe example of using jivan in enhydra application is provided.
(Task Id: 1645) Integrate Eclipse + Kelp for Eclipse in dev version - integrated Eclipse 3.0 (with integrated Kelp) which installation is automatically started after finished enhydra installation (Windows).
(Task Id: 1427) Docbook is a part of Enhydra binary distribution development.
(Task Id: 1600) PiggyBank EJOSA sample application (with DODS based data layer) include as Enhydra sample application.
(Task Id: 1542) GolfShop (Enhydra Demo Application) session problem resalved.
News and bugs fixing (not in Task list):
Enhydra6.0 distribution now includes (additional) binary distribution files. Binary, Enhydra6.0, distribution is completely configurable through configure batch/shell script file (placed in <enhydra_source>/enhydra directory). For further information's about configuration (parameter options), please, consult 'readme.txt' file placed in root directory of Enhydra6.0 binary distribution (<enhydra_source>).
Implemented extension of Tomcat's FileLogger. Now all logging goes trough Monolog (including Tomcat's).
JOnAS 4.1 (Tomcat ad Jetty) binary files included in Enhydra's source.
EnhydraAdmin application - included source files in Enhydra's source.
This chapter lists the features associated with Enhydra 6.0-beta1
Servlet container is not a part of Enhydra any more, but it is needed for running Enhydra applications. Any servlet container that supports servlet 2.3 specification can be used for running Enhydra applications. Two server container options are included with Enhydra distributions: JOnAS Tomcat and/or JOnAS Jetty. The documentation for this release is located in
JOnAS is a pure Java, open source, application server conforming to the J2EE specification. However, its high modularity allows to it to be used as
a J2EE server, for deploying and running EAR applications (i.e. applications composed of both web and ejb components),
an EJB container, for deploying and running EJB components (e.g. for applications without web interfaces or when using JSP/Servlet engines that are not integrated as a JOnAS J2EE container),
a Web container, for deploying and running JSPs and Servlets (e.g. for applications without EJB components).
Enhydra Tools are used for developing Enhydra Applications. The following tools are included:
DODS 5.1-10 release.
Octopus 2.8 release.
Barracuda 1.2.6 release.
XMLC 2.2.5 (CVS version - date 25.02.2004.).
Ant 1.5.4 release.
AntContrib 1.5.2 release.
Zeus 3.5 release.
Soap 2.3.1 release.
gnu.regexp 1.1.4 release.
DocBook stylesheets 1.61.3 release.
Cactus 1.4.1 release.
Jalopy 1.0 Beta 10 release.
JDepend 2.7 release.
Jakarta ORO 2.0.8 release.
Quartz Scheduler 1.3.4 release.
JUnitDoclet 1.0.2 release.
Enhydra application is a servlet that can be served to the Net by different servlet continers (JOnAS Tomcat, JOnAS Jetty,...), or it can be installed in any Servlet-capable Web server.
In Enhydra, there are the following applications:
XalanDoc (url http://localhost:9000/XalanDoc) - demonstration application that uses XML file as data source.
AirSent (url http://localhost:9000/AirSent) - demonstration application for querying, inserting, deleting and updating a tables. It uses enhydra DODS.
ImapWeb (url http://localhost:9000/ImapWeb) - sample enhydra application that represents IMAP mail client.
SimpleVXML (url http://localhost:9000/SimpleVXML) - simple Voice-XML application.
The Poker Application (url http://localhost:9000/Poker) - simulation of a poker; it can use database. By default, it doesn't use database, but, if uses, the default database is HSQL
The DiscRack Application (url http://localhost:9000/discRack) - demonstration application for querying, inserting, deleting and updating a list of Persons and their Discs in a database. It uses enhydra DODS. The default database is HSQL.
The TransactionsDiscRack Application demonstration application for querying, inserting, deleting and updating a list of Persons and their discs in a database. It uses enhydra DODS and it's new transaction features. The default database is HSQL.
The Multibase Enhydra Demo Application (url http://localhost:9000/multibase) - demonstration application for querying, inserting, deleting and updating tables in case of simultanious using multiple databases in same application. It uses enhydra DODS.
The Calculator Application (url http://localhost:9000/calculator) - little application that simulates a simple calculator.
BarracudaDiscRack (url http://localhost:9000/BarracudaDiscRack) - example of using Barracuda in Enhydra application.
BarracudaConfig (url http://localhost:9000/BarracudaConfig) - serves a twofold purpose. You can actually use it to configure a running Barracuda system (nice!), but it also provides a great example of how to combine components, events, forms, and localization all in one app (even better!).
The PhoneBook Application (url http://localhost:9000/phoneBook) - demonstration application for querying and updating a list of phone numbers in a database. It has been tested with Informix, Oracle, InstantDB and HSQL databases. The default database is HSQL.
The PhoneBookClient Application (url http://localhost:9000/phoneBookClient) - dThis is a demonstration client application for PhoneBook's Axis server.
The Project Management Application (url http://localhost:9000/projectManagement) - application whose primary use should be evidencing of working hours of employees within some organization. It holds the data of employees, customers, projects, pay rates and finally, the working hours.
The GolfShop Application (url http://localhost:9000/GolfShop) - Web shopping cart application used to support on-line Golf Store shopping Experience.
The Chat Application (url http://localhost:9000/chat) - chat room application; it uses a special algorithm to achieve the effects of push technology using standard HTTP. Messages the user sends appear immediatly.
The CGIRunner Application (url http://localhost:9000/CGIRunner) - simple CGIServlet sample. It starts "run.bat" file which dispays (on STDOUTPUT) the set of environment variables that is transfered to executable.
The SnoopServlet Application (url http://localhost:9000/SnoopServlet) - servlet that shows the data sent by the client.
The FileServlet Application (url http://localhost:9000/FileServlet) - simple FileServerServlet sample - serves static HTML page.
The JarServlet Application (url http://localhost:9000/JarServlet) - simple JarServerServlet sample - serves static HTML page from application jar file.
The Welcome Application (url http://localhost:9000/Welcome) - simple "hello world" test application.
CactusForEnhydra (url http://localhost:9000/CactusForEnhydra) - enhydra testing framework using Jakarta Cactus.
FopApplet (url http://localhost:9000/FopApplet ) - used to create PDF file from the input sources that are XSL:FO formatted. These input sources can be one of: FO parameter (path to a FO file), or XML+XSL parameters (paths to XML and XSL files)
The EnhydraFlash (url http://localhost:9000/enhydraFlash) - example of using Flash animation in enhydra application.
The JivanExample (url http://localhost:9000/JivanExample) - example of using Jivan which has its own way of DOM parsing and DOM procesing in a way to create dynamic HTML page used as users http response.
The PiggyBank (url http://localhost:9000/PiggyBank) - simple example showing the application of EJOSA Templates.
NOTE: We are assuming that Enhydra 6.0 is installed with default connection port setting (9000).
Ant 1.6 - Main class changed
Due to change of ant's main class name (the name was org.apache.tools.ant.Main), all task definitions and bat files which explicitly use this class will not work.
Applications with Macromedia Flash animation - Redirection
We still have problems with redirection inside animations.
These release notes apply to Enhydra 6.0-beta1.
Enhydra 6.0 is a complete release, and should not be installed over an existing Enhydra installation.
Source code for building installations is included in source distribution.
Through the open-source development process, Enhydra has been used on a wide variety of platforms and with many different JDBC-supported databases.
Oracle8i with the Oracle JDBC Driver
PostgreSQL 7.0.2 with the PostgreSQL JDBC Driver
Microsoft SQL Server 7.0 and 2000 on NT Server, and 2000 with the JTurbo 2.0 JDBC Driver