db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rick Hillegas <Richard.Hille...@Sun.COM>
Subject Re: J2ME rev level
Date Tue, 31 Jul 2007 16:11:26 GMT
Knut Anders Hatlen wrote:
> Rick Hillegas wrote:
>> Myrna van Lunteren wrote:
>>> On 7/30/07, Rick Hillegas <Richard.Hillegas@sun.com> wrote:
>>>  
>>>> What rev level of CDC/Foundation are we claiming to support in 10.3?
>>>> CDC/Foundation 1.0 or CDC/Foundation 1.1? I notice that the 10.3 code
>>>> includes calls to Throwable.initCause(), which I thought was not
>>>> supported in CDC/Foundation 1.0. See
>>>> http://issues.apache.org/jira/browse/DERBY-2210
>>>>
>>>> Thanks,
>>>> -Rick
>>>>
>>>>     
>>> I thought DERBY-2210 and DERBY-2228 indicate the move to Foundation 
>>> 1.1.
>>> But, these issues do say it was supposed to be backwards compatible to
>>> 1.0, I think?
>>>
>>> Which may not be true because of DERBY-2472... & revision 
>>> 520663...and others?
>
> DERBY-2210 says that Foundation 1.1 is backward compatible with 
> Foundation 1.0 (that is, an application written for 1.0 should work on 
> 1.1), not that Derby is compatible with Foundation 1.0. It also 
> mentions that the change will allow use of initCause(), so I don't 
> think the intention was to be compatible with 1.0.
>
>>> Myrna
>>>   
>> Thanks for pointers to those other JIRAs, Myrna. It looks as though 
>> the following may be the case:
>>
>> 1) Derby implements the CDC/Foundation 1.0 api.
>>
>> 2) However, Derby runs on CDC/Foundation 1.1 implementations provided 
>> that the application does not invoke any incremental api introduced 
>> by CDC/Foundation 1.1.
>
> I'm not sure the above statements are quite accurate. Derby does not 
> implement the Foundation 1.0 (or 1.1) API. That would be similar to 
> saying that Derby implements Java SE 6. I also don't think there is 
> anything in Derby that will make applications fail if they use new 
> methods in the Foundation 1.1 API. What Derby implements, is the JDBC 
> 3.0 subset specified in JSR-169. The Foundation 1.0/1.1 specs do not 
> include the java.sql and javax.sql packages, so no API changes were 
> required for Derby when moving from Foundation 1.0 to 1.1.
>
>> 3) When run on a CDC/Foundation 1.0 implementation, Derby may raise 
>> method-not-found exceptions. This may happen if Derby error 
>> processing tries to invoke Throwable.initCause().
>
> I don't think a CDC/Foundation 1.0 implementation will be able to load 
> the classes in derby.jar since it is on JVM level 1.3 and Derby is 
> compiled with source level and target level set to 1.4.
>
Thanks, Knut. This is very helpful. So here's a revised summary:

1) Derby 10.3 will NOT run on a CDC/Foundation 1.0 implementation. 
Attempts to do so will raise UnsupportedClassVersionError.

2) Derby 10.3 will run on CDC/Foundation 1.1 implementations. In this 
configuration, Derby satisfies the stripped down JDBC api of JSR 169 
rather than JDBC 3.0 or 4.0.

It appears that DERBY-2228 and DERBY-2472 have been closed. What work 
remains to be done on DERBY-2210?

Thanks,
-Rick

Mime
View raw message