Posted by kohsuke
on April 18, 2005 at 12:21 PM PDT
Source code of JAXB RI and its libraries are finally open to public on java.net.
Last Friday, Ryan and I spent most of the day to bring the source code of the JAXB RI from Sun's internal CVS repository to java.net. It wasn't a simple CVS import because we need to retain a portion of the repository inside Sun (for example, all those test cases that we received from various people.)
But all the code that constitutes the JAXB RI --- the runtime, the compiler, the schema generator, and the whole thing --- are on java.net. And it's not a mirror, it's not a snapshot, but it is live! every change we make daily goes directly to this repository.
Unfortunately we had to put them under a click-through screen because lawyers are kings and engineers are servants, but once you go through a ritual you can use the standard cvs command to access the code.
Other interesting bits
The JAXB RI CVS repository contains many libraries we wrote for the JAXB RI. Let me introduce some of them here:
- codemodel generates Java source code. It models AST of Java, and it's specifically designed to write the source code. Unlike template engines, codemodel allows out-of-order code generation.
- xsom models XML Schema components. We use this to parse XML Schema into a programatically accessible form. It can also read annotations.
- txw allows you to efficiently write XML documents in a streaming, type-safe fashion. We use this to generate schemas. It comes with the schema compiler and the runtime. The schema compiler reads a RELAX NG grammar and generates annotated interfaces. The implementations for those interfaces are generated at runtime, and calling methods on those interfaces will produce corresponding XML.
To get to those source code, please accept a click-through screen and wait for the instruction in e-mail in 2 days.