如何在启动时在Singleton Bean中注入事件

时间:2014-07-01 03:43:43

标签: singleton cdi openwebbeans

美好的一天,

任何人都可以给我一个关于如何在启动时在Singleton bean中注入事件的建议。

这是我的代码。 (在Weld(Glassfish 3.1.2)上工作正常)

@Singleton
@Startup
public class SingletonBean {

@Inject @Type private Event<Event>   Event; 

}

但是在WAS 8.5.5.1上部署此代码时,这是错误

The @Inject factory encountered a problem getting the object instance @Inject java.lang.reflect.Field.event binding object.  The exception message was: Api type [javax.enterprise.event.Event] is not found with the qualifiers 
Qualifiers: [@javax.enterprise.inject.Any()]
for injection into 
 Field Injection Point, field :  javax.enterprise.event.Event package.SingletonBean.event,

我想在启动时不会在单例bean中注入Event。

感谢您的帮助。

编辑1.添加了限定符@Type的代码。

@Qualifier
@Retention(RetentionPolicy.RUNTIME)
@Target({
    ElementType.METHOD, 
    ElementType.FIELD, 
    ElementType.PARAMETER, 
    ElementType.TYPE
})
public @interface Type{}

0 个答案:

没有答案