Friday 25 May 2007

Tapestry 4.1 and jdk issues

I am developing a couple of components for Tapestry 4.1. They are meant to go into the final release of Tapestry Bayeux 2.0.0.
But I am having some difficulties getting a clear answer whether or not Tapestry 4.1 is java 1.4 compatible.
Just up until now I thought it was because tapestry 4.0 was and haven't seen any notes saying different about the 4.1 release. But now I am in doubt because I am having trouble executing on of my a testcases compiled by java 1.4.
I keep getting:

java.lang.UnsupportedClassVersionError:
org/apache/tapestry/markup/MarkupFilter (Unsupported major.minor version 49.0)
The error indicate that tapestry 4.1 has been compiled using java 5 and I am trying to compile and execute my test using java 1.4.

To further strengthen my theory I stumbled across the following code in the tap 4.1 source which uses autoboxing, hence can only be compiled by java 5.
org.apache.tapestry.dojo.form.Autocompleter
from line 268:
/**
* {@inheritDoc}
*/
public boolean isAsync()
{
return Boolean.TRUE;
}
If I have to compile using tapestry 4.1, is it correct that my only solution is to go with java 5 and no longer support java 1.4 runtimes?

I did some google searching: site:tapestry.apache.org/tapestry4.1 jdk but I only managed to find the following phrase on the page describing the upgrade from 3.0 to 4.0.
"Part of the transition to Tapestry 4.0, and targetting (in a later release) a minimum JDK of 1.5,..."
A later release seems to be Tapestry 4.1!

I miss a clear statement telling what java version tapestry is compiled by and what runtimes tapestry 4.1 supports.

You are more than welcome to enlighten me if you know the answer.

No comments: