close
The Wayback Machine - https://web.archive.org/web/20100116074716/http://openjpa.apache.org:80/
OpenJPA Logo   ASF Logo

Welcome to Apache OpenJPA

Apache OpenJPA is a Java persistence project at The Apache Software Foundation that can be used as a stand-alone POJO persistence layer or integrated into any Java EE compliant container and many other lightweight frameworks, such as Tomcat and Spring.

The 1.x releases (1.2.1 is the latest) are a feature-rich, compliant implementation of the Java Persistence API (JPA) 1.0 part of the JSR-220 Enterprise Java Beans 3.0 specification, which pass the Sun JPA 1.0b Technology Compatibility Kit.

The upcoming 2.0 release (see JPA 2.0 Roadmap) will implement the JSR-317 Java Persistence 2.0 specification, which is currently based on an early access and non-compliant specification release, but is backwards compatible to the JPA 1.0 specification.


Image Download OpenJPA Now!
Image Quick Start Guide
Image User's Guide


News


Last changed Nov 09, 2009 21:32 by Jeremy Bauer

With the completion of iteration 12, OpenJPA includes several additional JPA 2.0 features
and bug fixes. Here is a summary of the new features provided by OpenJPA:

  • Support for extended lock scope via the javax.persistence.lock.scope property.
  • Support for the GA version of the JSR-303 Bean Validation API.
  • Many documentation updates, notably for Criteria API and Metamodel tooling.
  • Continued improvement of test coverage for additional database platforms. The current test matrix is available here.
Posted at Nov 09, 2009 by Image Jeremy Bauer | Image 0 comments | Edit
Last changed Oct 13, 2009 06:39 by Donald Woods
Labels: release, jpa2, openjpa, jsr317

Milestone 3 of OpenJPA 2.0.0 is now available for download. This release is based on the 20090922 Proposed Final Draft 2 of the JSR-317 JPA 2.0 specification. Included are many enhancements, fixes, and new functionality; giving developers early access to many key features of JPA 2.0. Visit the OpenJPA 2.0.0 Milestone 3 page for additional details.

Note: This is an implementation of an early-draft specification developed under the Java Community Process (JCP). The code is untested and presumed not to be a compatible implementation of the JSR-317 Java Persistence API, Version 2.0 specification. We encourage you to migrate to an implementation of the JSR-317 Java Persistence API, Version 2.0 specification that has been tested and verified to be compatible as soon as such an implementation is available, and we encourage you to retain this notice in any implementation of JSR-317 Java Persistence API, Version 2.0 specification that you distribute.

Posted at Oct 12, 2009 by Image Donald Woods | Image 0 comments | Edit
Last changed Oct 06, 2009 08:45 by Jeremy Bauer

With the completion of iteration 11, OpenJPA includes several additional JPA 2.0 features and bug fixes. Here is a summary of the new features provided by OpenJPA:

  • OpenJPA is based upon Proposed Final Draft 2 of JSR-317.
  • Support for cascading detach using cascade-detach as specified in the orm.xml.
  • Assertion that relationships in MappedSuperclass are unidirectional.
  • OpenJPA was updated to the CR5 level of the bean validation specification.
  • A new code sample which showcases the use of embeddables.
  • Corrected an XML encoding issue which occurred when using XML data with SQL Server.
  • Many documentation updates.
  • Improved test coverage for many database platforms. The current test matrix is available here.
Posted at Oct 06, 2009 by Image Jeremy Bauer | Image 0 comments | Edit
Last changed Oct 06, 2009 07:29 by Jeremy Bauer

With the completion of iteration 10, OpenJPA includes several additional JPA 2.0 features and bug fixes. Here is a summary of the new features provided by OpenJPA:

  • Support for the Criteria and Metamodel API. The Criteria and Metamodel API can be used in conjunction to create and execute strongly-typed programmatic queries.
  • Metamodel source file generation. OpenJPA provides tooling to generate metamodel source classes.
  • Support for the TypedQuery and Tuple interfaces. These interfaces are provided to manipulate typed queries and their results.
  • Automatic setting of compatibility options based upon persistence version. Compatibility options are configured based on persistence version to provide backward compatibility for OpenJPA version 1.x applications.
  • Support for naming of unique constraints.
  • Lob, Temporal, and Enumeration can now be specified on element collections.
  • JPQL now supports multiple constructors in the query projection list.
  • Support for the shared-cache-mode element in the persistence.xml. Provides configuration/enablement options for L2 cache.
  • Support for Cacheable annotation and CacheStoreMode/CacheRetriveMode properties. Allows per class configuration of L2 cacheing and per-operation tuning of cache behavior.
  • Database updates including updates for Derby reserved words, usage of a new version of commons-pool and commons-dbcp, and a new Derby network server test profile.
  • Support for JDBC date, time, and timestamp literals within JPQL and Criteria queries.


Posted at Sep 01, 2009 by Image Donald Woods | Image 0 comments | Edit
Last changed Aug 13, 2009 11:59 by Donald Woods

With the completion of iteration 9, OpenJPA includes several additional JPA 2.0 features and bug fixes. Here is a summary of the new features provided by OpenJPA:

  • Bean Validation support for validation groups. Specific validation groups can be targeted for lifecycle events.
  • A TraversableResolver is now registered with the bean validator. The resolver ensures that only loaded attributes are validated.
  • A PersistenceProviderResolver and PersistenceProviderResolverHolder are available from the Geronimo Spec API. PersistenceProviderResolver can be used to return the list of persistence providers available in the runtime environment.
  • Availablility of ProviderUtil and PersistenceUnitUtil interfaces. These interfaces provide methods to determine the load state of a persistent entity or attribute. In addition, PersistenceUnitUtil can be used to get the identifier of an entity.
  • Significant improvements to OpenJPA's subquery processing.
  • OpenJPA now includes the ability to use a pluggable encryption provider. This provider can be used to support encrypted database passwords in the persistence.xml. See the Encryption Provider chapter in the documentation for more details.


Posted at Aug 06, 2009 by Image Jeremy Bauer | Image 0 comments | Edit


Resources

Copyright (C) 2005-2009 Apache Software Foundation. Licensed under Apache License 2.0.
Apache, the Apache feather logo and OpenJPA are trademarks of Apache Software Foundation.