Release Notes for OpenJPA
Overview
These notes describe the difference between OpenJPA release 2.0.0 Milestone
1 and the preceding release, 1.2.0.
OpenJPA is a feature-rich implementation of the persistence part of Java
Community Process JSR-220 (Enterprise JavaBeans 3.0), which is known as the
Java Persistence API (JPA). OpenJPA can be used as a stand-alone POJO
persistence layer, or it can be integrated into any EJB3.0 compliant container
and many lightweight frameworks. This release of OpenJPA is 100% compliant
with the JPA specification. This release of OpenJPA also includes some
functionality from the Java Community Process JSR-317 (JPA 2.0). For the
complete list of supported features please refer to the OpenJPA online issue
tracker:
http://issues.apache.org/jira/browse/OPENJPA.
Additional information on the OpenJPA project may be found at the project web
site:
http://openjpa.apache.org
License
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
The license may also be found in LICENSE.txt which is included
in each release of OpenJPA.
Prerequisites
In normal usage, OpenJPA requires Java 5 or higher and a relational
database of some sort.
Documentation
If you have questions about OpenJPA, a good source of information is the
online product manual. You can find the manual for the current release as well
as older releases of OpenJPA at
http://openjpa.apache.org/documentation.html
If you can't find what you're looking for in the manual or would like more
clarification you please post to the OpenJPA development mailing list.
Information on all of the OpenJPA mailing lists may be found here:
http://openjpa.apache.org/mailing-lists.html
Getting Involved
The Apache OpenJPA project is being built by the open source community for the
open source community - we welcome your input and contributions!
What we are looking for
- Source code and fixes contributions
- Documentation assistance
- Product and feature suggestions
- Detailed and constructive feedback
- Articles and whitepapers
How do I Contribute?
- To discuss Apache OpenJPA topics check out the mailing lists.
- Informal discussion also occurs on the #openjpa IRC channel on
freenode.net.
- Bugs and other issues can be posted on the project JIRA.
Release Notes - OpenJPA - Version 2.0.0
Release Notes - OpenJPA - Version 2.0.0
- [OPENJPA-722] - persist - clear - merge scenario doesn't work
- [OPENJPA-744] - Extra SQL on LAZY/EAGER ManyToOne relation
- [OPENJPA-754] - Un-scheduled pre/postUpdate callbacks from persist.
- [OPENJPA-765] - Check for insertable or updateable before checking value for null
- [OPENJPA-769] - Add compatibility option to use previous column naming convention
- [OPENJPA-770] - Use annotations instead of excluding tests in pom.xml
- [OPENJPA-782] - Support for collections of embeddables and basic types
- [OPENJPA-803] - Update SequenceGenerator to support schema and catalog
- [OPENJPA-804] - JPA 2.0 spec API update - iteration 1
- [OPENJPA-805] - JPQL updates - iteration 1
- [OPENJPA-809] - Support JPA 2.0 Cache Interface
- [OPENJPA-823] - Add JPA 2.0 schemas and appropriately validate for version
- [OPENJPA-837] - OpenJPA 2.0: Update OpenJPA documentation with new persistence schemas
- [OPENJPA-850] - Support equivalent names for plug-in value
- [OPENJPA-851] - Support for enhanced map collection (and corresponding annotations)
- [OPENJPA-855] - JPA2 Query support for Index function
- [OPENJPA-856] - JPA2 Query support for entity type expressions
- [OPENJPA-861] - Update the manual for XML column support for MySQL
- [OPENJPA-557] - Primary key sequences broken with postgres schemas
- [OPENJPA-580] - Need a better algorithm to find DBDictionary classname in DBDictionaryFactory
- [OPENJPA-732] - Updates to entities via Lifecycle callback methods
- [OPENJPA-751] - Typos in the manual
- [OPENJPA-755] - OpenJPA thows EntityExistsException trying persist a preexisting, detached entity
- [OPENJPA-761] - SchemaTool failed with a NPE in ForeignKey.join
- [OPENJPA-762] - Batch execution fails for Oracle when batch limit set to -1 (unlimited batch size)
- [OPENJPA-764] - Query parsing error with IN expression and String functions such as UPPER()
- [OPENJPA-777] - Exception is thrown during retrieval of an entity which contains a persistent collection of embeddable
- [OPENJPA-787] - slices query.getSingleResult is broken
- [OPENJPA-792] - An entity persist may fail when @MappedSupercalss is specified.
- [OPENJPA-795] - enhancer throws an exception when parsing column name "first.name" because it thinks 'first' is a table name
- [OPENJPA-811] - With Oracle, OpenJPA allows setting non-nullable field to null
- [OPENJPA-815] - Exception is thrown when retrieving an entity which contains an embeddable and the embeddable contains a toMany relation
- [OPENJPA-818] - TCK module should use Geronimo JPA 2.0 EA jar
- [OPENJPA-819] - NPE when no metadata is defined for a persistent class
- [OPENJPA-834] - State field mapped to XML column has incorrect value when loaded from database
- [OPENJPA-835] - Loading nested toMany EAGER relation resuled in PersistenceException
- [OPENJPA-836] - after em.clear the datacache is inconsistent
- [OPENJPA-838] - fix parameter setting problem when QuerySQLCache is on
- [OPENJPA-843] - Unnecessary version update on inverse-side of a 1-m relationship
- [OPENJPA-853] - Informix cursor not open problem if synchronizeMapping set true
- [OPENJPA-863] - Unexpected mere-cascade behavior when cascade.all/merge specified on both sides of relationships !!!
- [OPENJPA-864] - Subquery problems with SYNTAX_DATABASE (Oracle)
- [OPENJPA-872] - Compound custom id in bidirectional many-to-one
- [OPENJPA-873] - @MappedSuperClass Cause Null Pointer Exception in Class With IdClass
- [OPENJPA-742] - Add line number and column number to QueryMetaData
- [OPENJPA-752] - ProxySetupStateManager.setProxyData routing through PersistanceCapable caused "PersistenceException: null"
- [OPENJPA-772] - Use apache pom as parent
- [OPENJPA-778] - cleaning up build for openjpa-kernel
- [OPENJPA-779] - patch for eclipse .project and .classpath files...
- [OPENJPA-780] - code review for DistributedStoreManager
- [OPENJPA-781] - openjpa-jdbc depends on postgres driver, should be "provided"
- [OPENJPA-783] - openjpa-lib/pom.xml has extraneous code
- [OPENJPA-784] - more pom.xml dependency cleanup
- [OPENJPA-817] - Order of inserts lost when using ConstraintUpdateManager
- [OPENJPA-854] - Testcases should not specify log level
- [OPENJPA-833] - An improved test case for XML column mapping
Previous Releases
Release notes for earlier releases of OpenJPA may be found in SVN at the following locations.
OpenJPA 1.2.0 RELEASE-NOTES.html
OpenJPA 1.1.0 RELEASE-NOTES.html
OpenJPA 1.0.0 RELEASE-NOTES.html