openwebbeans-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "John D. Ament" <john.d.am...@gmail.com>
Subject Re: Weird CDI error with OpenEJB deployment
Date Wed, 12 Feb 2014 17:03:29 GMT
Is the static modifier also acceptable?

On Wed, Feb 12, 2014 at 11:33 AM, Romain Manni-Bucau
<rmannibucau@gmail.com> wrote:
> 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