aries-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christoph Gritschenberger (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (ARIES-851) Multiple IllegalStateException when deploying a new PersistenceUnit
Date Tue, 22 May 2012 09:16:40 GMT

     [ https://issues.apache.org/jira/browse/ARIES-851?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Christoph Gritschenberger updated ARIES-851:
--------------------------------------------

    Component/s: Util
    
> Multiple IllegalStateException when deploying a new PersistenceUnit
> -------------------------------------------------------------------
>
>                 Key: ARIES-851
>                 URL: https://issues.apache.org/jira/browse/ARIES-851
>             Project: Aries
>          Issue Type: Bug
>          Components: JPA, Util
>         Environment: Linux-3.0.0, Karaf-3.0.0-SNAPSHOT with Felix, openjdk-6
>            Reporter: Christoph Gritschenberger
>         Attachments: ARIES-851-stacktrace.TXT, BundleHookBundleTracker-solution1.patch,
BundleHookBundleTracker-solution2.patch, jpa-test-bundle-src.zip, persistence-feature.xml,
test.jpa.bundle-0.1.0-SNAPSHOT.jar
>
>
> Steps to reproduce
> * Compile or get a karaf-3.0.0-SNAPSHOT and unpack it
> * Install openjpa-2.2.0 (using the attached feature-file)
> * Deploy a bundle containing a persistence-unit (attached jar for example)
> get the following Exception 4 times:
> {code}
> ERROR: Bundle org.apache.aries.jpa.container [78] EventDispatcher: Error during dispatch.
(java.lang.IllegalStateException: Unable to create persistence units for the bundle test.jpa.test.jpa.bundle/0.1.0.SNAPSHOT
as previous persistence units already exist.)
> java.lang.IllegalStateException: Unable to create persistence units for the bundle test.jpa.test.jpa.bundle/0.1.0.SNAPSHOT
as previous persistence units already exist.
> {code}
> See attachment for full stacktrace
> In subsequent startups the Exception is still thrown but the stacktrace does not show
in the console or the log.
> Also when using equinox the Stacktrace does not appear in either the console or the log
ever, but it's still thrown.
> The problem is that the PersistenceBundleManager#addingBundle is called multiple times
for the newly installed bundle.
> The PersistenceBundleManager is passed as a BundleTrackerCustomizer to a BundleHookBundleTracker.
> The BundleHookBundleTracker stores it in it's own private attribute and also passes it
to it's super-constructor.
> So the customizer is stored in the instance twice.
> It's called by both BundleTracker$Tracked.customizerAdding and BundleHookBundleTracker$Tracked.customizerAdding.
> Both "Tracked" recognize the bundle as untracked and call the addingBundle-method.

--
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

        

Mime
View raw message