• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
  • Campbell Ritchie
  • Paul Clapham
  • Jeanne Boyarsky
  • Junilu Lacar
  • Henry Wong
  • Ron McLeod
  • Devaka Cooray
  • Tim Cooke
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Frits Walraven
  • Tim Holloway
  • Carey Brown
  • Piet Souris
  • salvin francis
  • fred rosenberger

Which JPA RI to use ?

Posts: 17
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi All,

Can you please tell me which JPA implementations is to be used for Enterprise apps as well as Standarad app.

The few that i see is Hibernate, Eclipse links, Top links or OpenJPA, as the RI for JPA.

Can you please let me know which one we should use ..?
Ranch Hand
Posts: 34
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Chris, here is my understanding:

Afaik, there is only one reference implementation for a specification: Toplink was the JPA 1.0 RI, and its successor EclipseLink will be (is) the JPA 2.0 RI.
Hibernate and OpenJPA are implementations of the spec, but not the reference one.

In terms of functionality described in the JPA spec, any of these implementations should behave the same. Additionaly, each one provide specific extensions, that are not 'JPA compliant', but can be useful (for example, the Hibernate Criteria API is not part of the JPA 1.0 spec, and I miss it).

I would say that for a standard application, Hibernate seems to be the mainstream framework, and has a great forum/community (and also a great Spring integration, as I'm a Spring fan ).

For an enterprise application, I'd stick with the implementation coming from the targeted application server (just to avoid depending on another set of libraries): Hibernate with JBoss, OpenJPA with Websphere and Weblogic, EclipseLink with Glassfish.

If anyone knows compatibility problems between some JPA implementations and application servers, or implementations problems with respect to the JPA spec, I'd really be glad to improve my knowledge on this topic

author and cow tipper
Posts: 5000
Hibernate Spring Tomcat Server
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I'd suggest Hibernate, although, if you are on a JEE5 server, just use your native JPA provider/Entity Manager.

I believe that JPA2 will include the ability to perform criteria type queries.

-Cameron McKenzie
Do the next thing next. That’s a pretty good rule. Read the tiny ad, that’s a pretty good rule, too.
Devious Experiments for a Truly Passive Greenhouse!
    Bookmark Topic Watch Topic
  • New Topic