On Feb 14, 2006, at 12:43 AM, Sanjiva Weerawarana wrote:
We haven't committed to doing JAX-B yet but there's been some
interest.
I'd love to work on JAX-B but there are only so many hours in the day :(
One concern with JAX-B is that its J2SE 1.5 specific and we want to
continue to run under 1.4. I'd be interested in understanding the
Geronimo 1.4/1.5 strategy.
I see two possible strategies here:
1) retrotranslator.sourceforge.net - build time or runtime
translation from Java 5 byte code to Java 1.4 byte code. Strangely
enough, it seems to work perfectly (including debugging). FWIU, the
conversion from 5 to 1.4 is a fairly trivial 1-to-1 translation.
Baisically, it removes the new extra op code in Java 5 and remaps new
apis in the java.* packages to apis in net.sf.retrotranslator.runtime.*.
2) abstraction layer - the main code is written in Java 1.4 and there
is an abstraction layer that deals with the Java 5 spcific bits like
looking up annotations.
James Strachan has done some extensive testing with retrotranslator
(including the JAX-B ri) and really wants to use it. I think option
2 will work but will require a ton of work, so I'm leaning towards
option 1. My gut says that option 1 will make people nervous at
first, but once they see it working, I think they will learn to love
the bomb ;)
-dain