Hi Andrew! When I did my first evaluations for a new project 3 years ago. Back then I was checking out the sources fo EclipseLink, Hibernate and OpenJPA.
EclipseLink just didn't cut it at all. From what I've heard, the Eclipse community now rewrote a huge part of the code already, but they are imo still quite a few miles away from being production ready. I have honestly no idea how it could have become the RI for JPA... Hibernate is much better. It basically works pretty well and is also relatively fast. There is only one thing which I don't like that much and this is their subclassing approach for 'enhancement'. This has a few nasty side effects and you need to know them. I finally picked OpenJPA because it was (in my tests) the only JPA provider which was able to reliably serialize/deserialize entities without loosing state or trashing the database afterwards. I really need this because we have a real cluster environment and peak 5 mio page hits/day in our app, so not being able to serialize is a knock out. Of course you need a few magic properties in your persistence.xml: <property name="openjpa.DetachState" value="loaded(DetachedStateField=true)"/> <property name="openjpa.Compatibility" value="IgnoreDetachedStateFieldForProxySerialization=true"/> The problem with the other JPA providers was the following scenario: 1.) load from db 2.) change 3.) serialize (store in JSF @ViewScoped and wait for 2nd request) 4.) deserialize 5.) change in the JSF applyValues phase 6.) merge in a JSF action if you could change 5 and 6 then the other providers work as well. Too bad that doesn't fit the JSF workflow! OpenJPA accomplishes this by _still_ using a StateManager, even if the entity is detached. In EclipseLink this didn't work at all. In Hibernate it will work if you do _not_ use any Lazy Loading. Maybe that's the reason why HIbernate in the default modeeven ignores FetchType.LAZY in the top layer of your entity and always does eager fetching. LieGrue, strub PS: I'm using build-time-enhancement with the openjpa-maven-plugin ----- Original Message ----- > From: Andrew Hastie <and...@ahastie.net> > To: users@openjpa.apache.org > Cc: > Sent: Wednesday, May 2, 2012 8:56 PM > Subject: Re: OpenJPA vs EclipseLink > > For information, OpenJPA it is also embedded with IBM WebSphere. > > On 02/05/12 19:25, José Luis Cetina wrote: >> Hi im newbie in OpenJPA i know OpenJPA is an implementation as EclipseLink, >> i always used EclipseLink, now im moving from Glassfish to TomEE and i see >> openjpa is embeded with TomEE, i read the OpenJPA manual and i like the >> innovations in openjpa, but i just want to know the >> advantages/disadvantages of openjpa, or a little comparative with openjpa >> vs eclipselink or hibernate, and one more thing about how fast is openjpa >> vs others. >> >