FinalModifierExceptions as a result of Quiesce changes to add proxies for 
services
----------------------------------------------------------------------------------

                 Key: ARIES-412
                 URL: https://issues.apache.org/jira/browse/ARIES-412
             Project: Aries
          Issue Type: Bug
    Affects Versions: 0.3
            Reporter: Joe Bohn


I've noticed that we are now receiving FinalModifierExceptions when running the 
samples (Blog and AriesTrader).  It seems to me that these are the result of 
some changes for quiesce support for JPA.   I'm not quite sure of the reason or 
purpose for the changes - but the function seems to be creating proxies for 
services using the AsmInterceptorWrapper for items that we did not previously 
create Asm proxies.  Not all of these objects work well as proxies and hence 
these exceptions.   This can be easily seen running either the Blog or 
AriesTrader samples after change rev. 995797 for ARIES-383 ( 
https://issues.apache.org/jira/browse/ARIES-383 )

org.apache.aries.blueprint.proxy.FinalModifierException
        at 
org.apache.aries.blueprint.proxy.ProxySubclassGenerator.scanForFinalModifiers(ProxySubclassGenerator.java:323)
        at 
org.apache.aries.blueprint.proxy.ProxySubclassGenerator.getProxySubclass(ProxySubclassGenerator.java:118)
        at 
org.apache.aries.blueprint.proxy.ProxySubclassGenerator.newProxySubclassInstance(ProxySubclassGenerator.java:155)
        at 
org.apache.aries.blueprint.proxy.AsmInterceptorWrapper.createSubclassProxy(AsmInterceptorWrapper.java:163)
        at 
org.apache.aries.blueprint.proxy.AsmInterceptorWrapper.createProxyObject(AsmInterceptorWrapper.java:85)
        at 
org.apache.aries.blueprint.container.ServiceRecipe$TriggerServiceFactory.getService(ServiceRecipe.java:463)
        at 
org.eclipse.osgi.internal.serviceregistry.ServiceUse$1.run(ServiceUse.java:120)
        at java.security.AccessController.doPrivileged(Native Method)
        at 
org.eclipse.osgi.internal.serviceregistry.ServiceUse.getService(ServiceUse.java:118)
        at 
org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:445)
        at 
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.getService(ServiceRegistry.java:430)
        at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl.getService(BundleContextImpl.java:666)
        at 
org.apache.aries.blueprint.namespace.NamespaceHandlerRegistryImpl.addingService(NamespaceHandlerRegistryImpl.java:90)
        at 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:896)
        at 
org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:261)
        at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:233)
        at 
org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:840)
        at 
org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:124)
        at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:930)
        at 
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:220)
        at 
org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:149)
        at 
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:757)
        at 
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:712)
        at 
org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:129)
        at 
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:206)
        at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:506)
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.registerService(BlueprintContainerImpl.java:388)
        at 
org.apache.aries.blueprint.container.ServiceRecipe.register(ServiceRecipe.java:174)
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.registerServices(BlueprintContainerImpl.java:646)
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:314)
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:213)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:98)
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:207)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:637)


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to