Hibernate EntityManager Changelog ================================== 3.4.0.GA (20-08-2008) ---------------------- ** Bug * [EJB-375] - getSingleResult potentially generates out of memory by calling list() ** Task * [EJB-377] - Refactor build to allow filtering of resources 3.4.0.CR2 (01-08-2008) ---------------------- ** Bug * [EJB-349] - EM Incorrectly throws EntityExistsException wrapping ConstraintViolationException on constraint violation during delete 3.4.0.CR1 (27-05-2008) ---------------------- ** Improvement * [EJB-359] - Move to slf4j ** New Feature * [EJB-352] - Add pom * [EJB-353] - Make build independent of Hibernate Core structure * [EJB-354] - Move to Hibernate Core 3.3 3.3.2.GA (14-03-2008) --------------------- ** Bug * [EJB-324] - Deployed Maven POM incorrectly excludes transitive dependency * [EJB-342] - event listener (prepersist, preinsert) not firing 3.3.2.CR1 (06-03-2008) ---------------------- ** Bug * [EJB-295] - External META-INF/orm.xml not included even when explicitly requested when an internal orm.xml is already present * [EJB-330] - Calling configure(String) on Ejb3Configuration before addAnnotatedClass(..) breaks callbacks * [EJB-333] - Space in path result in error during deployment in JBoss AS * [EJB-334] - Space in path result in error during deployment in JBoss AS * [EJB-340] - onLoad() callback from Interceptor and onLoad() from Lifecycle are never invoked in an EJB3 environment * [EJB-341] - Trying to create unexisting named query set the transaction to rollback 3.3.2.Beta2 (15-01-2008) ------------------------ ** Bug * [EJB-283] - Ejb3Configuration can't read Jar file OC4J * [EJB-299] - JarVisitor.addElement() fails with a StringIndexOutOfBoundsException if there is a package-info.class in the default package * [EJB-326] - Persistence unit root in a WAR not properly handled ** Improvement * [EJB-277] - allow string values for query hints ** New Feature * [EJB-305] - New configuration option for non-shared Hibernate interceptor * [EJB-325] - Any PersistenceExceptions should state which persistenceunit they are from 3.3.2.Beta1 (31-10-2007) ------------------------ ** Bug * [EJB-284] - Scanning for META-INF/orm.xml does not work on Windows in EE mode * [EJB-308] - Space in path result in error during deployment in JBoss AS * [EJB-310] - Typo in warn message when the container lacks temporary classloader support * [EJB-321] - TCK enforces PERSISTENCE_PROVIDER value including the typo ** Improvement * [EJB-316] - java.persistence.Persistence#PERSISTENCE_PROVIDER should be a final String ** Task * [EJB-302] - Move away from ArchiveBrowser and use JarVisitor 3.3.1.GA (28-03-2007) --------------------- ** Bug * [EJB-280] - java.lang.NoSuchMethodError: Hibernate EM 3.3.0 breaks Jboss Embedded EJB3 due to method signature change * [EJB-281] - Version 3.3.0 is not compatible with JBoss AS 4.0.5 * [EJB-282] - ORM.xml ignored when excludeUnlistedClass = true in container mode (EJB 3.0, Spring) 3.3.0.GA (19-03-2007) --------------------- ** Bug * [EJB-46] - PrePersist callback method not called if entity's primary key is null * [EJB-257] - EJB3Configuration should work wo having to call any of the configure(*) * [EJB-259] - Evaluate orm.xml files in referenced jar files * [EJB-261] - merge fails to update join table * [EJB-263] - getSingleResult() and fetch raise abusive NonUniqueResultException * [EJB-269] - Fail to deploy a persistence archive in Weblogic Server * [EJB-275] - JarVisitor fails on WAS with white space ** Improvement * [EJB-242] - Be more defensive regarding exotic (aka buggy) URL protocol handler * [EJB-262] - Provides XML file name on parsing error * [EJB-271] - Raise a WARN when deployment descriptors (orm.xml) refer to an unknown property (increase usability) * [EJB-266] - Avoid collection loading during cascaded PERSIST (improving performance on heavily cascaded object graphs) 3.2.1.GA (8-12-2006) -------------------- ** Bug * [EJB-226] - JarVistor.getVisitor does not handle paths containing spaces correctly for an exploded par * [EJB-229] - merge fails with detached obj in 1:1 relationship * [EJB-237] - merge() causes version to increase * [EJB-240] - attribute-override and embedded in orm.xml not working * [EJB-244] - JarVisitor fails on exploded archives with spaces in path * [EJB-247] - HibernatePersistence does not play well with other PersistenceProviders * [EJB-252] - Clarify documentation on package use in persistence.xml (and it's meaning) * [EJB-253] - Support Weblogic JAR URL in JavaSE mode ** Improvement * [EJB-232] - Better documentation for and scanning outside of PU root * [EJB-243] - Error in Documentation: persistence.xml for typical Java SE Environment * [EJB-246] - Consider being in a JavaEE container when jta-datasource is used * [EJB-248] - Wrap StaleStateException into an OptimisticLockException during em.getTransaction().commit() * [EJB-254] - Allow DataSource overriding through createEntityManager(String, Map override) * [EJB-256] - Avoid JAR locking on Windows and Tomcat due to URLConnection caching 3.2.0.GA (16-10-2006) --------------------- Same code base as 3.2.0.CR3 ** Task * [EJB-239] - Add EJB 3.0 JavaDoc to the distribution 3.2.0.CR3 (04-10-2006) ---------------------- ** Bug * [EJB-150] - JarVisitor.addElement does not close passed input streams * [EJB-221] - TransientObjectException with FetchType.LAZY on @ManyToOne and field access on target entity * [EJB-231] - Optimistic locking exception could lead to java.lang.IllegalArgumentException: id to load is required for loading ** Improvement * [EJB-234] - Inefficiency during the flush operation 3.2.0.CR2 (16-09-2006) ---------------------- ** Bug * [EJB-98] - EntityManager.find() throws an org.hibernate.ObjectDeletedException if you find something deleted in the same TXA * [EJB-148] - Incorrect exception when @CollectionOfElement is used with @Where and FetchType is EAGER * [EJB-174] - Ejb3Configuration can't open EJB Jar file with persistence.xml in Oracle OC4J server (Jifeng Liu) * [EJB-181] - ExplodedJarVisitor and paths with white spaces * [EJB-185] - Some EJB3 exceptions does not support nested exceptions * [EJB-187] - RuntimeException raised in CallBack methods should be left as is * [EJB-188] - @PostUpdate can be called even if @PreUpdate is not when object is in DELETED state * [EJB-189] - em.getReference() should raise IllegalArgumentException if the id is of the wrong type * [EJB-190] - Query.setParameter() should raise an IllegalArgumentException if the parameter does not exist * [EJB-191] - Incoherent usage of getResultList(), executeUpdate() or getSingleResult() regarding the DML/Select style should raise an IllegalStateException * [EJB-194] - Removing a detached instance is not allowed * [EJB-195] - Wrong query should raise an IllegalArgumentException * [EJB-196] - referencing a transient instance while flushing an association non cascaded should raise IllegalStateException * [EJB-198] - On em.close(), tries to register the transaction even if the transaction is marked for rollback * [EJB-202] - Inaccurate exception message for setFirstResult in QueryImpl * [EJB-203] - exception when using top-level PROPERTY in orm.xml * [EJB-204] - ClassCastException when using in orm.xml * [EJB-205] - refresh() should raise IllegalArgumentException if the entity is not managed * [EJB-207] - em.lock(..., WRITE) raise NPE on some DBs * [EJB-212] - excludeUnlistedClasses ignored in SE case * [EJB-214] - Native Query can not be used with parameter * [EJB-215] - EntityManager fails during transaction commit after it has been closed * [EJB-216] - Query.getSingleResult() whose state-field is null raise an EntityNotFoundException rather than returning null * [EJB-218] - markForRollback() should not swallow the original exception * [EJB-220] - Entity listener documentation contradicts EJB3 specification * [EJB-223] - EntityNotFoundDelegate not Serializable ** Improvement * [EJB-82] - Query interface should support parameter lists for positions * [EJB-182] - Add Websphere proprietary jar protocol * [EJB-186] - Set the default cache provider to NoCache to prevent PU misuse to raise exceptions * [EJB-201] - Ejb3Configuration should output a warning if no persistence.xml is found * [EJB-210] - OptimisticLockStrategy should expose the underlying stale entity * [EJB-211] - JavaDoc the EJB 3 API ** New Feature * [EJB-154] - Allow to create/configure an EJB3Configuration without building a sessionfactory * [EJB-160] - Push EJB3Configuration and SessionFactory into JNDI * [EJB-184] - Add EM property for FlushMode 3.2.0.CR1 (13-05-2006) ---------------------- ** Bug * [EJB-9] - Proxied instances should raise ENFE not LIE * [EJB-59] - count(*) return Integer and not Long * [EJB-101] - callback method overriding should avoid supermethod calls * [EJB-116] - The EntityManager's configuration overwites configurations from the hibernate.cfg.xml file * [EJB-167] - EntityManager must return null, if entity does not exist. * [EJB-168] - Do not register Synchronization on Transaction marked as rollback * [EJB-169] - MappingException thrown when META-INF/orm.xml is not found * [EJB-173] - Resetting joined transaction state on a closed entity manager raise an exception * [EJB-177] - in beforeCompletion phase, the transaction might not be returned causing an NPE ** Improvement * [EJB-84] - Integrate the ClassFileTransformer and pass the appropriate entities to enhance * [EJB-159] - RESOURCE_LOCAL should be default in JavaSE * [EJB-172] - Use Hibernate abstraction of the ByteCodeEnhancer for class file transformation * [EJB-175] - Support for createNativeQuery.executeUpdate() ** New Feature * [EJB-165] - Support interceptor and callback XML overriding * [EJB-170] - Try to find in the parsed JAR before delegating to the regular resource locator 3.1.0.Beta8b (27-04-2006) ------------------------- ** Bug * [EJB-121] - FileZippedJarVisitor can not handle URL with white spaces in windows XP professional. * [EJB-155] - assumes Map.Entry where string is returned * [EJB-156] - Setting a transaction factory raise an assertion failure * [EJB-166] - StaleObjectStaleException not wrapped into an optimisticLockException when merge is used ** New Feature * [EJB-157] - Display the version number at init time to avoid user confusion regarding the version used * [EJB-164] - Support for EJB3 mapping files and META-INF/orm.xml 3.1beta7 (27-03-2006) --------------------- ** Bug * [EJB-37] - Check all the spec exceptions to be sure we raise the right ones * [EJB-80] - EMF bootstrapping doesn't work as documented * [EJB-96] - Spelling error in 2.4 section of reference doc * [EJB-114] - NPE when Persistence.createEntityManager(String) is used * [EJB-115] - wrong loglevel in PersistenceXmlLoader.java (line 101) * [EJB-118] - PersistenceXmlLoader logging a fail message * [EJB-119] - @EntityResult definition is not correct * [EJB-123] - Exception "EntityManager is closed" throwed when trying to check isOpen() * [EJB-125] - Can't use Hibernate's FlushMode.NEVER with an EntityManager * [EJB-134] - javax.persistence.OptimisticLockException not thrown * [EJB-139] - em.getTransaction() should raise IllegalStateException if accessed on a JTA EM * [EJB-145] - Support EntityManager.joinTransaction() ** Improvement * [EJB-77] - Getting access to the annotationconfiguration behind a Ejb3Configuration * [EJB-135] - em.close() should close the API but let the EM in sync with the attached transaction * [EJB-147] - Validate persistence.xml file from persistence_1_0.xsd ** New Feature * [EJB-90] - Mark transaction for Rollbacked on PersistenceException * [EJB-106] - EntityManager.lock( , LockModeType.WRITE) * [EJB-117] - extra persist() queue * [EJB-137] - Implements EntityExistsException * [EJB-138] - Implements EntityTransaction.setRollbackOnly() * [EJB-141] - Update EntityManagerFactory interface by removing PersistenceContextType and adding the overriding map * [EJB-142] - RollbackTransaction on JTA should clear the persistence context * [EJB-143] - Set the transaction_factory automatically from Transaction_type unless explicitly set * [EJB-144] - Failure of EntityTransaction.commit() should rollback(); ** Task * [EJB-107] - Check use of persistenceUnitInfo.getClassLoader() 3.1beta6 (20-01-2006) --------------------- ** Bug * [EJB-93] - @PrePersist callback not called on cascade * [EJB-110] - misnamed method in PersistenceUnitInfo * [EJB-111] - close() throws IllegalStateException( "transaction in progress") ** New Feature * [EJB-50] - Entity callbacks should handle subclassing * [EJB-83] - PersistentUnitInfo and new persistence.xml schema as per the pfd * [EJB-85] - Support CUD operations out of transactions * [EJB-86] - EntityManager.getFlushMode() * [EJB-87] - EntityManager.lock( , LockModeType.READ) * [EJB-88] - EntityManager.clear() * [EJB-89] - Replace EntityNotFoundException to NoResultException for query.getSingleResult() * [EJB-91] - persistence.xml structure changes as per the PFD * [EJB-92] - Implements transactional-type * [EJB-104] - Flag for class file transformation * [EJB-108] - Support EJB3 overriding properties (provider, jta / non-jta datasource, transactionType) over persistence.xml ** Improvement * [EJB-100] - Multiple lifecycle per event * [EJB-102] - EJB3 no longer requires to rollback the ids ** Deprecation * [EJB-105] - Implicit positional parameters for EJBQL queries is no longer supported 3.1beta5 (13-12-2005) --------------------- ** Bug * [EJB-52] - PERSIST cascade loads unilitialized elements at flush time * [EJB-68] - hibernate.ejb.interceptor property in persistence.xml is ignored * [EJB-73] - Id is not set in @PostPersist * [EJB-76] - JarVisitor unqualify algorithm fails when the name ends with 'ar' and is less than 4 chars * [EJB-78] - default value for hibernate.transaction.flush_before_completion ** New Feature * [EJB-58] - Support @MyAnnotation annotated with an @EntityListener * [EJB-71] - Support custom event listeners ** Improvement * [EJB-35] - Support custom NamingStrategy as property. * [EJB-72] - Make setDataSource() more out of container friendly * [EJB-75] - Fall back to blah when the value attribute is empty * [EJB-79] - Package.getPackage() returns null on some classloaders 3.1beta4 (07-10-2005) --------------------- * EJB-67 Lazy access to the stream in JarVisitor leading to a non access when filters are empty (ie no filters) * EJB-65 handle eclipse bundleresource url protocol during metadata search * EJB-66 Support all url protocols that returns zip streams for jars like http * EJB-62 Error during stateful session bean passivation * EJB-61 implicit parameter ? no longer supported * EJB-63 Positional parameters should start from index 1 to say sort of consistent with the spec 3.1beta3 (14-09-2005) --------------------- * EJB-6 Support ?1, ?2 style positional parameters * EJB-60 Support byte code instrumentation via a ClassFileTransformer * EJB-55 Problems using a .par file with Tomcat * EJB-56 Support exploded jar files *not* ending with .xar * EJB-51 Support persistence.xml declaration and hibernate.cfg.xml * EJB-53 DELETE_ORPHAN not executed at flush time * EJB-52 Persist cascade loads uninitialized elements at flush time * EJB-43 Autodetection magic leads to duplicate imports * EJB-24 ByteArrayBlobType incompatible with Oracle * EJB-28 create an EMF through PersistenceInfo * EJB-44 Support Hibernate Interceptors in EJB3 imlementation as an extension * EJB-40 Entity callbacks should cast away access modifiers * EJB-48 Plug Validator framework into HEM * EJB-47 Validator and Jacc event listeners clashes 3.1beta2 (04-08-2005) --------------------- * Support package names in * EJB-42 Autodetection magic ignores hibernate.cfg.xml * EJB-45 Allow to disable autodetection in .par through a property * EJB-41 Short-circuit dirty checking when no callback are actually called * EJB-38 Standalone EM should search for package-info files * EJB-31 Out-of-container should search for .hbm.xml files * EJB-29 Lifecycle callbacks and dirty checking clash * EJB-36 proxied instances raise an exception in em.contains() * EJB-28 support injected DataSource * EJB-34 EMF.isOpen() is wrong * EJB-27 Support transaction-less operations with getEntityManager() * EJB-23 No lifecycle interceptor used when getCurrentSession() is called * EJB-20 Sync Hibernate *state* and entity on lifecycle @Callbacks * EJB-21 NPE in TransactionImpl.isActive() when tx is not initialized (Shane Bryzak) * EJB-19 analysed, but the resource path is mandatory and not only the jar name * EJB-18 get mapped classes from .par files both exploded and regular zip 3.1beta1 Preview (24-06-2005) ----------------------------- Initial release