[
https://issues.apache.org/jira/browse/ARIES-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14630950#comment-14630950
]
Christian Schneider commented on ARIES-933:
-------------------------------------------
Can you retest the issue with Aries jpa 2. There I have implemented a 2 staged
approach. When the bundle gets resolved the EntityManagerFactory is created
without a DataSource just too give the persistence provider a chance to enhance
the classes. Then in a second stage the real EntityManagerFactory is created
when the DataSource or DataSourceFactory service is available.
> IllegalStateException when the peristence bundle gets resolved.
> ---------------------------------------------------------------
>
> Key: ARIES-933
> URL: https://issues.apache.org/jira/browse/ARIES-933
> Project: Aries
> Issue Type: Bug
> Components: JPA
> Affects Versions: 0.3, 1.0
> Reporter: Ioannis Canellos
> Assignee: Christian Schneider
> Fix For: jpa-2.0.0
>
> Attachments: ARIES-933.patch
>
>
> Aries JPA tries to create the entity manager factories when the persistence
> bundle gets in resolved state.
> With some persistence providers this can cause issues. For example Hibernate
> will try to access the datasource via jndi when creating the EMF, causing the
> IllegalStateException due to the fact that the persistnce bundle still has
> not context (is in resolved state).
> Even worse it will leave the EntityManagerFactoryManager is a wrong state,
> preventing it to create the EMF when the bundle is created.
> There are two ways of approaching this issue:
> i) Don't try to create EMF when the persistence bundle gets resolved.
> ii) Catch possible errors and cleanup, so that EMF can be created when the
> bundle gets started.
> I am going to attach a patch for the first appraoch, unless there is a good
> way for creating EMF when the bundle gets resolved.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)