Enhydra 3.0.1 Release Notes
These release notes include:
Changes Since Enhydra 3.0
-
There was a bug in the HttpRequestProcessor, which would cause
problems when a post was done with keepalive. The postParams object
was not cleared by the next() method, causing the same data to be
return if another post came in on a keepalive connection. This bug
has been fixed in the 3.0.1 release.
-
Enhydra Director documentation was cleaned up to improve readability and remove references to old, non-existent files.
Platform, System, and Install Requirements
Installation
-
The Windows InstallShield program will only work on systems where Windows
has been installed to the C drive.
-
WinZip 5.6 may have problems with the long file names. Use Jar, WinZip
6.0 or higher, or another zip extraction tool.
Platform Support
Through the open source development process, Enhydra has been used on a
wide variety of platforms and with many different JDBC-supported databases,
but only the specific configurations listed below are fully tested
Enhydra 3.0.1 Multiserver
-
Red Hat Linux 6.1
-
VA Linux 2.2.13-0.7smp
-
Windows NT Server 4.0 SP5
-
Solaris 2.7
Enhydra Director
-
Apache 1.3 web server on Solaris 2.7 and Red Hat Linux 6.1
-
Netscape (iPlanet) Enterprise Server 4.0 on Solaris 2.7 and NT Server 4.0SP5
-
Microsoft Internet Information Server 4.0 on NT Server 4.0SP5
Databases
-
Oracle 8i on Solaris 2.7 with the Oracle JDBC Driver.
-
PostgreSQL 6.5.3 with the PostgreSQL JDBC Driver.
-
Microsoft SQL Server 7.0 with the JTurbo 2.0 JDBC Driver.
JDKs
-
Sun JDK 1.1.8, 1.2.2 (Note: there are problems with using Sun JDK 1.1.6
and on Windows).
-
IBM JDK 1.1.8
-
BlackDown 1.2.2 RC4
Note that JREs cannot be used with Enhydra due to XMLC and JSP dynamic
page re-compilation.
System Requirements
The minimum recommended system configuration is:
-
Intel 200 MHz processor or Sparc-compatible processor
-
64 MB or RAM or more
-
259 MB of disk space (less if you don't install the Enhydra source)
New Features
General
-
Enhydra Director provides load-balancing and server failover. Installation
and configuration instructions are provided in the online document, Using
Enhydra Director.
-
Support for Java Servlet 2.2 API and Java Server Pages (JSP) 1.1
API.
-
Multiserver now fully supports the Java Servlet 2.2 interface and Java
Server Pages (JSP 1.1).
-
Session persistence is now configurable to use URL rewriting instead of
cookies. This eliminates the need for clients to have cookies enabled.
-
Kelp Tools improvements: You can now automatically invoke the XMLC tool
in the IDE's build process. Kelp also supports all XMLC options through
XMLC options files, and you can open XMLC Property Pages directly from
the project navigator's short-cut menu.
XMLC
-
XMLC is now built on the Xerces DOM implementation from the Apache
XML Project. This implementation provides DOM level 2 support.
The W3C DOM allowed copying a Node from one document to another, which
is illegal operation. In Xerces, you can accomplish the same thing
by using document.importNode( ).
-
XMLC now supports dynamic re-compilation. You can modify HTML pages
at runtime, and your application can use the new content without stopping
your application. You must use the XMLC_AUTO_COMP flag when compiling
the application. You must also be sure to use the proper method calls
in your application. Use
myPageHTML = (myPageHTML)comms.xmlcFactory.create(myPageHTML.class)
where comms is the HttpPresentationComms object; instead
of the old form,
myPageHTML = new MyPageHTML()
Some brief online documentation is provided on automatic
re-compilation.
-
Wireless/WML Support: You can use Wireless Markup Language (WML) pages
in your application by using the DOM Factory class WMLDomFactory.
This will produce WMLDocument classes. To do this, use the following command-line
syntax:
xmlc -dom-factory org.enhydra.wireless.wml.WMLDomFactory
-
Support for X-Catalogs; this enables you to specify DTDs that are local,
rather than via HTTP.
-
XMLC now handles internal DTD subsets.
-
There is a new formatting package, org.enhydra.xml.io, that enables
you to format DOMs into documents.
Application Wizard
-
The application wizard now creates presentation objects that use methods
that support XMLC dynamic recompilation.
Known Problems
Enhydra Specific
-
ContentType for static files is compiled into the application and is not
defined in a configuration file.
-
Application Names in the Multiserver Administration Console must be alphanumeric.
-
Selecting the Connections tab in the Multiserver Administration Console
Status page incorrectly changes the text on the disabled tab from "Servlet"
to "Application".
-
Internet Explorer 4.0 users should not use the option to set each window
as a seperate instance, as this may cause problems with some applications
that use popups or multiple windows.
-
Enhydra does not currently compile on Windows 95, resulting in system crashes.
This problem does not occur on Windows 98 and Windows NT.
Platform Specific
-
A performance degradation occurs on Windows platforms if an Enhydra application
is generating a lot of debug or log messages which are displayed on the
screen. This problem does not occur if the window displaying the output
is minimized. To work around this Windows problem, either remove debug
messages or minimize the window.
-
On Windows platforms without an active network connection, the first access
to Enhydra through localhost can result in a delay serving the first page
due to the initial DNS lookup.
-
On some platforms and JVMs, when Enhydra is first started, there is a delay
before the first page is served. This is a result of the initial loading
of the classes by the JVM.
Additional Notes
Multiple Connection Methods
Enhydra applications and Servlet 2.2 contexts (a "web app") can be accessed
through multiple URLs. This is achieved by creating more than one connection
method. In the case of Servlet 2.2 Web applications there is a restriction
that each connection method must have the same URL path prefix (the
port number may be different).
In general, multiple connection methods are discouraged. They are useful
for providing a "special" access path to an application for debugging or
for privilaged admin access to an application designed for such purposes.
DODS GUI
The GUI interface to the Enhydra Object-to-releational mapping technology
is provided as a convenience. It does not prevent the operator from creating
illegal mappings that cannot be automatically built or that can cause errors
in the tool. Careful use of the tool can prevent these errors. The user
is envouraged to edit the DOML (XML specification file created by the DODS
GUI) directly and run DODS in command line mode to avoid these problems.
See the latest DODS documentation at the Enhydra.org
web site.
MultiServer Debugger
When debugging Servlet 2.2 applications you may occasionally see seemingly
duplicate entries. This is caused by the Servlet 2.2 internal redirection
mechanism or "server side redirect" and correspond to a single client request.
Each of these requests are picked up by the debugger hence the two entries.
Documentation Errata
In Getting Started with Enhydra, Chapter 4, section titled "Creating
Data Objects," in following the instructions for step 3, you will encounter
a known problem with the DODS GUI; it does not allow you to add data objects
directly to sub-packages. So if you have:
simpleApp ( package )
data( package )
person( package )
Person( data
object you made )
You have to add the object Person to the data or simpleApp package and
then drag it down into the person package.
In Getting Started with Enhydra, Appendix B, "Using the Multiserver
Administration Console," you must perform some additional steps to manage
an application with the administration console:
-
In the application configuration file, change the line
Server.ClassPath[ ] =/<your_app_root>/lib/appName.jar
-
After you click the ADD button and select the name of your application
from the dropdown list, click "Connection" to transfer to the Connection
status display for your new application.
-
Click the Create button to establish the connection.
Reporting Bugs and Feature Requests
Send bug reports and feature requests via email to: bugs@enhydra.org.
Please include the JDK vendor, version number, operating system, and Enhydra
version.