openwebbeans-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Romain Manni-Bucau <rmannibu...@gmail.com>
Subject Re: Weird CDI error with OpenEJB deployment
Date Wed, 12 Feb 2014 16:33:30 GMT
Hi

try to remove @Inject from the producer method
Romain Manni-Bucau
Twitter: @rmannibucau
Blog: http://rmannibucau.wordpress.com/
LinkedIn: http://fr.linkedin.com/in/rmannibucau
Github: https://github.com/rmannibucau



2014-02-12 15:44 GMT+01:00 Rene Perschon <Chummer_Rene@gmx.net>:
> Hi!
>
> I'm currently migrating an application from glassfish to TomEE. During the deployment
however i get this error message and the deployment fails:
>
> CDI Beans module deployment failed
> org.apache.webbeans.exception.inject.DeploymentException: org.apache.webbeans.exception.WebBeansConfigurationException:
Producer annotated method : Annotated Method 'produceBookingRequestBuilder', Base Type : class
de.itso.mdbp.service.BookingRequestBuilder,Type Closures : null,Annotations : [@javax.inject.Inject(),
@de.itso.mdbp.web.qualifier.BookingRequestBuilderInConversation(), @javax.enterprise.context.ConversationScoped(),
@javax.enterprise.inject.Produces()],Java Member Name : produceBookingRequestBuilder,Annotated
Parameters : [Annotated Parameter,Base Type : interface javax.enterprise.context.Conversation,Type
Closures : null,Annotations : [],Position : 0] can not be annotated with @Initializer/@Destructor
annotation or has a parameter annotated with @Disposes/@Observes
> at org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:226)
> at org.apache.openejb.cdi.OpenEJBLifecycle.startApplication(OpenEJBLifecycle.java:187)
> at org.apache.openejb.cdi.ThreadSingletonServiceImpl.initialize(ThreadSingletonServiceImpl.java:162)
> at org.apache.openejb.cdi.CdiBuilder.build(CdiBuilder.java:43)
> at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:799)
> at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:612)
> at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1205)
> at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1051)
> at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:127)
> at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
> at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
> at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5322)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
> at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
> at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
> at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:983)
> at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1660)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:744)
>
> The producer looks like this:
>
> @Produces
> @ConversationScoped
> @BookingRequestBuilderInConversation
> @Inject
> public static final BookingRequestBuilder produceBookingRequestBuilder(Conversation conversation)
> {
> if (conversation.isTransient())
> {
> conversation.begin();
> }
> BookingRequestBuilder brb = null;
> try
> {
> brb = (BookingRequestBuilder) LookupUtil.lookup("BookingRequestBuilder");
> }
> catch (NamingException e)
> {
> Logger.getLogger(UserDetailsProducer.class).error("Cannot obtain a handle to the BookingRequestBuilder!",
e);
> return null;
> }
> return brb;
> }
>
> And the additional qualifier looks like this:
>
> @Qualifier
> @Target({ TYPE, METHOD, PARAMETER, FIELD })
> @Retention(RUNTIME)
> @Documented
> public @interface BookingRequestBuilderInConversation
> {
> }
>
> Now I can't find the issue here, what's wrong with that? It did deploy to glassfish all
right (i think glassfish uses weld?). Can anybody help me here?
>
> Thanks in advance!
> René

Mime
View raw message