[
https://issues.apache.org/jira/browse/GERONIMO-6491?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13799762#comment-13799762
]
Ghislain Nadeau commented on GERONIMO-6491:
-------------------------------------------
I guess we'ld have more chances if you vote for the issue.
> Blueprint managed transaction in error
> --------------------------------------
>
> Key: GERONIMO-6491
> URL: https://issues.apache.org/jira/browse/GERONIMO-6491
> Project: Geronimo
> Issue Type: Bug
> Security Level: public(Regular issues)
> Components: Aries, osgi, transaction manager
> Affects Versions: 3.0.1
> Reporter: Ghislain Nadeau
> Priority: Critical
>
> I have a simple bundle which is only used to define entities and services to
> retrieve and save those objects. Here's his Blueprint:
> {code:xml}
> <?xml version="1.0" encoding="UTF-8"?>
> <blueprint
> xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
> xmlns:bptx="http://aries.apache.org/xmlns/transactions/v1.0.0"
> xmlns:bpjpa="http://aries.apache.org/xmlns/jpa/v1.0.0"
> xmlns:bpresref="http://www.ibm.com/appserver/schemas/8.0/blueprint/resourcereference">
> <bean id="inventoryImpl"
> class="org.jslain.bundle.webpersistence.InventoryImpl">
> <bptx:transaction
> method="*"
> value="Required"
> />
> <bpjpa:context
> property="entityManager"
> unitname="org.jslain.bundle.WebPersistence" />
> </bean>
>
> <service id="service_inventoryImpl" ref="inventoryImpl"
> interface="org.jslain.bundle.webapi.IInventory" />
> </blueprint>
> {code}
> However, when starting i get the following error...
> It looks like the container is expecting a constructor receiving wrong
> arguments for the proxy of my service. If i remove the transaction part, i
> starts well (but doesn't work at runetime, 'cause jpa needs a transaction)
> {code}
> 2013-09-28 09:42:06,802 ERROR [BlueprintContainerImpl] Unable to start
> blueprint container for bundle org.jslain.bundle.WebPersistence
> org.osgi.service.blueprint.container.ComponentDefinitionException: Unable to
> instantiate components
> at
> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:644)
> at
> org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:331)
> at
> org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:227)
> at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
> at java.util.concurrent.FutureTask.run(FutureTask.java:166)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
> at java.lang.Thread.run(Thread.java:722)
> Caused by: java.lang.VerifyError: (class:
> org/jslain/bundle/webpersistence/$InventoryImpl57473856, method: <init>
> signature: (Ljava/lang/reflect/InvocationHandler;)V) Call to wrong
> initialization method
> at java.lang.Class.getDeclaredConstructors0(Native Method)
> at java.lang.Class.privateGetDeclaredConstructors(Class.java:2404)
> at java.lang.Class.getConstructor0(Class.java:2714)
> at java.lang.Class.getConstructor(Class.java:1674)
> at
> org.apache.aries.proxy.impl.gen.ProxySubclassGenerator.newProxySubclassInstance(ProxySubclassGenerator.java:159)
> at
> org.apache.aries.proxy.impl.AsmProxyManager.createNewProxy(AsmProxyManager.java:81)
> at
> org.apache.aries.proxy.impl.AbstractProxyManager.createProxy(AbstractProxyManager.java:50)
> at
> org.apache.aries.blueprint.container.BeanRecipe.addInterceptors(BeanRecipe.java:688)
> at
> org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:728)
> at
> org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:64)
> at
> org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:219)
> at
> org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:147)
> at
> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:640)
> ... 10 more
> {code}
--
This message was sent by Atlassian JIRA
(v6.1#6144)