&xslt4j; 2.0.D07 incorporates a Xalan-Java 1 compatibility jar, some performance enhancements, and a number of bug fixes for bugs found in version 2.0.D06.
Compatibility jar: xalanj1compat.jar
This release includes a new JAR in the bin directory --xalanj1compat.jar, that lets you rebuild your Xalan-Java 1.x applications to run with Xalan-Java 2. As a point of reference, this JAR includes the API required to recompile the Xalan-Java 1.x core sample applications (excluding the sample extensions) and run them with Xalan-Java 2. To use this compatibility layer with an existing Xalan-Java 1.x application, do the following:
- Place xalanj1compat.jar on the system classpath in front of the Xalan-Java 2 xalan.jar (both are in the bin directory).
- Recompile your application. It it does not compile, you may be using Xalan-Java 1.x API that the compatibility layer does not support.
- Run the recompiled application with xalanj1compat.jar on the system classpath in front of the Xalan-Java 2 xalan.jar.
We want our Xalan-Java 1.x users to start using Xalan-Java 2. That is where we are concentrating our efforts to improve performance and fix any outstanding bugs. To see what portion of the Xalan-Java 1.x API we have included in xalanj1compat.jar, see Xalan-Java 1 compatibility Javadoc. For example, the compatibility layer does not support the use of Xalan-Java 1.x extensions. If you feel that we should extend our compatibility JAR to support additional Xalan-Java 1.x API calls, please let us know exactly what you would like to see.
Other changes
Along with performance enhancements, we have fixed a number of bugs found in Xalan-Java 2.0.D06:
- Fixed handling of disable-output-escaping="no". Previously, once it was turned on, it could not be turned off.
- Fixed a bug with whitespace handling where Xalan was incorrectly checking for whitespace
stripping before collation of multiple whitespace events into a single text node.
- Whitespace stripping wasn't working with input DOMs before. This is now fixed.
- Fixed many exception handling problems and problems with error reporting.
- Fixed a bug resetting parameters in Transformer clearParameters().
- Fixed a bug where CDATA sections were not matching the text() node test.
- Made better memory allocation problem with result tree fragments.
- Made result tree fragment parsing of numbers consistent with strings.
- Exceptions thrown from extensions should now be properly reported via the error listener.
- Fixed hard-coded stack dump set off by m_reportInPostExceptionFromThread variable.
- Fixed intermittent threading problem with text nodes being dropped.
- Fixed problem with variable evaluation inside of union expressions.
For a list of tasks in the &xslt4j2; To-Do list that have been completed, see Tasks completed.