You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@aries.apache.org by "Timothy Ward (Resolved) (JIRA)" <ji...@apache.org> on 2011/12/20 11:43:31 UTC
[jira] [Resolved] (ARIES-765) Attempting to execute an operation on
a closed EntityManagerFactory when the persistence unit is re-deployed
[ https://issues.apache.org/jira/browse/ARIES-765?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Timothy Ward resolved ARIES-765.
--------------------------------
Resolution: Fixed
Fix Version/s: 0.4
Assignee: Timothy Ward
I was unable to recreate the problem in testing, but there is a fix in trunk that should work. It would be great if people who've hit this problem could vaerify the fix.
> Attempting to execute an operation on a closed EntityManagerFactory when the persistence unit is re-deployed
> ------------------------------------------------------------------------------------------------------------
>
> Key: ARIES-765
> URL: https://issues.apache.org/jira/browse/ARIES-765
> Project: Aries
> Issue Type: Bug
> Components: Blueprint, JPA
> Affects Versions: 0.3
> Environment: Glassfish 3.1.1
> Reporter: Balazs Zsoldos
> Assignee: Timothy Ward
> Fix For: 0.4
>
>
> We use the JPA entities in the following way:
> - entities1.jar
> - entities2.jar
> - pu.jar
> The first two contains entity classes but no persistence unit, the third contains the Meta-Persistence header and a persistence.xml file (named to something else not to be realized by Glassfish)
> We use the persistence unit with blueprint.
> When we re-deploy the pu.jar we have to re-deploy everything else (even the jars that do contain only services that are related to unchanged entity classes) manually as the following exception occurs:
> java.lang.IllegalStateException: Attempting to execute an operation on a closed EntityManagerFactory.
> at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.verifyOpen(EntityManagerFactoryDelegate.java:305)
> at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.createEntityManagerImpl(EntityManagerFactoryDelegate.java:276)
> at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:290)
> at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:275)
> at org.apache.aries.jpa.container.impl.CountingEntityManagerFactory.createEntityManager(CountingEntityManagerFactory.java:71)
> at org.apache.aries.jpa.container.context.transaction.impl.JTAPersistenceContextRegistry.getCurrentPersistenceContext(JTAPersistenceContextRegistry.java:132)
> at org.apache.aries.jpa.container.context.transaction.impl.JTAEntityManager.getPersistenceContext(JTAEntityManager.java:87)
> at org.apache.aries.jpa.container.context.transaction.impl.JTAEntityManager.getCriteriaBuilder(JTAEntityManager.java:391)
> It would be nice if JTAEntityManager would realize when the persistence unit gets redeployed and would use the new instance.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira