Java Mailing List Archive

Home » JDOM Projects »

Re: [jdom-interest] jdom 2.0 with generics

Rolf Lear


Replies: Find Java Web Hosting

Author LoginPost Reply
Hi all.

I'm working on making the code available again. There are the usual issues, on my home server, etc.

On a more immediate level though, the code I have is based what's now old JDOM code (1.1). I did my changes a while ago. See the 'JDom and Java5' thread(s) here:

Then again, not much was changed between 1.1 and now.

I have re-instated the website..... Here's the original mail I wrote, with the updated URL's. Note, I don't have a git-server running any more, but the code is available using the http url....



Hi All.

I have ported JDom to use Java constructs throughout the code. I have taken great pains to make the ported library as similar to the existing one as possible. In fact, I believe that, in 99% of the cases, you will probably be able to take the Java5 version and simply recompile your code against the new Jar and have no problems.

At the same time, the code does a full implementation of Generics, removes encumbrances required to support old Java versions (Java1.2, etc.), and generally spruces up some of the ways that some things are done.

The porting has necessitated the rewrite of a number of core sections of code (like ContentList), but there are performance improvements in there too.

Obviously this has been an individual effort with all the pitfalls of 'single-mindedness' in there too. Any criticisms of the code will be welcomed as the intention is to get a good result.

I believe all the nice things in Java5 are now available, especially those using generics where all the methods return correctly typed data like such that constructs like:

   Element root = document.getRootElement();
   for (Element child : root.getChildren()) {
       // do something with element child....

are now possible.

At this stage, the work is done, and I am just trying to determine how much interest there is in such a port.

I have set up an 'unreliable' server (it is my computer at home on a residential cable-modem....) at where you can:

browse a full repository of the three core JDom projects (jdom, jdom-test, and jdom-contrib):

read a README I put together:

Download the actual source code (zipped or not):

Download the actual jar:

Review the API Docs:

Those wanting to access the repositories in git format can do so, or those with CVS can access the same repository using the (git-based) CVS proxies:

Thus, if you want to get a hold of the repositories, you can, using git:

<!--- this will not work any more
git clone git://
git clone git://
git clone git://

Or, using (slower) http protocol:

git clone
git clone
git clone

<!--- this will not work any more
Alternatively, you can use cvs (note the somewhat strange CVSROOTs)
cvs -d "" co HEAD -d jdom
cvs -d "" co HEAD -d jdom-contrib
cvs -d "" co HEAD -d jdom-test

Depending on the levels of interest in this there will probably be the requirement to migrate these repositories to a more reliable server, etc. We'll cross that bridge if we get to it.


On 22/07/2011 9:26 AM, Noel Grandin wrote:

Rolf - How about modifying the package name to be org.jdom2 ? That should make the people who want a new package name so as not to step on old code happy.
And can you put the code somewhere accessible?

Thomas - how would you like to receive changes? As a diff patch?

Thanks, Noel Grandin

To control your jdom-interest membership:
©2008 - Jax Systems, LLC, U.S.A.