Thanks for the email.

I'll note that backwards compatibility is an important philosophy for this project - believe it or not there are still JDK 1.3 users out there. (and it seems arrogant to demand they upgrade merely to use one library).

But it's an interesting idea to bring in useful JDK 1.4 features in a separate block of code. Seems a little messy, but it's worth considering. Please submit a bugzilla patch so that it's on record.

Thanks,
WILL

----- Original Message ----- From: "specialist33" <[EMAIL PROTECTED]>
To: "Velocity Developers List" <[EMAIL PROTECTED]>
Sent: Tuesday, December 14, 2004 8:37 AM
Subject: Re: Exception



Shinobu Kawai wrote:
> Hi Krystian,
>
>
>>Are there any plans to extend VelocityException to support Throwable
>>cause parameter (not only String message) in its constructor?
>
>
> You can always submit a patch to bugzilla as a RFE.  :)
> But remember, using JDK's cause will constrain Velocity to JDK 1.4 and
> above, so I suggest using o.a.c.l.exception.Nestable.
>
http://jakarta.apache.org/commons/lang/apidocs/org/apache/commons/lang/exception/Nestable.html

Since the apache proprietary system isn't implemented (well, I would say "broken" in V since you can't do much with a VException wihtout exception chaining), it seems silly to ignore the official system that is supported by all exceptions as of java 1.4 - a version that was released 2 years ago, and was available in beta for some time before that. The official java version is now java 5 - so refusing 1.4 features is to cater to people who are not 1 version behind the current one, but 2 versions.

Backwards compatibility is nice, but...this is not merely a case of refusing the convenience of the current java implementations, it's a case of being actively incompatible with the current Exceptions system.

If backwards compatibility is such a problem, it takes just 2 lines of code to detect the JVM version, and just a little division of the 1.4-only code into a separate class to make it work. Then the lazy classloader will not load the 1.4 clas on 1.1 JVM's because the class is never invoked, but 1.4 JVM's will transparently be compatible with the rest of the java universe...

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to