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