jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Serge Huber <shub...@jahia.com>
Subject Re: OJB / Hibernate PersistenceManagers [Was: PersistenceManager & childNodeEntries]
Date Thu, 10 Feb 2005 11:05:29 GMT

Hi Stefan & all,

I've been busy a much longer time than expected on updating the code to 
make it work completely. I think I have managed to remove all the known 
issues as well as improve the code a bit. In the hindsight, I learned a 
valuable lesson : OJB & Hibernate have VERY different ways of managing 
collections, especially how they handle removal within collections, and 
unfortunately I wasn't able to share all my POJO objects between the two 
implementations. The culprit here is OJB, which requires a specific 
interface or a specific collection implementation (which I chose) to be 
"notified" of collection element removal. Anyway, it should work now but 
I failed in my initial goal of using one set of ORM objects for both 

>- there's a broken dependency in the project.xml. maven couldn't 
>  find mysql-connector-java-3.1.6-bin.jar. i changed the dependency
>  to version 3.0.10-stable-bin and the build succeeded.
Sorry about that. I use an internal repository here and I had missed 
that. It is corrected now.

>- the junit test cases are located in the package org.jahia.jcr.test,
>  i'd prefer to put hem in org.apache.jackrabbit.test.*
Again an oversight. It is now corrected.

>- the source code is missing the correct apache license headers
I think I corrected all the files, but I might have missed one or two, 
thank you for letting me know if you see anything. I also added the 
license header to all the configuration files that would allow it.

>- the indentation of the java source is inconsistent 
This was due to a bug in my IDE (JBuilder 2005). It is now corrected.

>- NodeReferences are not yet fully supported (destroy, exists)
I have fully implemented these, but unfortunately it doesn't seem like 
Jackrabbit has test cases for these ?

>- BLOBs are not yet supported 
This is the great news in my new version, BLOBs are now supported ! I 
have only tested with HSQLDB and MySQL though. Also HSQLDB is a bit 
slower than MySQL as it doesn't use *real* blobs, but binary arrays to 
store the binary content (it's actually even crazier than that. If you 
look at the HSQLDB script files you see that the whole binary is 
contained in an SQL INSERT statement). But anyway I have implemented a 
test case that inserts a 1MB BLOB into the repository and it seems to 
work (I have also tested with 15MB BLOBs, but for reasons of test speed 
I have reduced the size to something smaller).

>if you would like to contribute the orm-persistence package 
>(which i would very appreciate :) please fix the above issues.   
>we would also need a CLA on file from you.
Ok I'll send in the CLA asap.

Here is the new ZIP with the updated codebase : 
http://www.jahia.org/~loom/orm-persistence-20050210-1200.zip . This file 
must be decompressed from the contrib directory as I am using relative 
paths to run the parent project tests.

Last but not least, I must say it's not always easy to stay up to date 
with all the commits going on these days, especially since half of the 
time it seems that things are broken (I have had a lot of test failures, 
especially in versioning). Usually things get corrected the same day so 
I didn't report it, but it might help to know where in the process of 
updating to 16.2 you guys are :)


View raw message