Jsf 2 @在PhaseListener中未调用后构造
我将jsf2.2与wildfly 8.1和javaee7一起使用 我在phaselistener中的CDIBean注入按预期工作,但@PostConstuct方法从未涉及 我试着用@javax.enterprise.context.ApplicationScope、SessionScope和Dependent注释phaselistener,但没有用 除了命名,这正是我在我的文章结构中所做的事情Jsf 2 @在PhaseListener中未调用后构造,jsf-2,cdi,postconstruct,phaselistener,Jsf 2,Cdi,Postconstruct,Phaselistener,我将jsf2.2与wildfly 8.1和javaee7一起使用 我在phaselistener中的CDIBean注入按预期工作,但@PostConstuct方法从未涉及 我试着用@javax.enterprise.context.ApplicationScope、SessionScope和Dependent注释phaselistener,但没有用 除了命名,这正是我在我的文章结构中所做的事情 //@ApplicationScope //@SessionScope //@Dependent pu
//@ApplicationScope
//@SessionScope
//@Dependent
public class MyPhaseListener implements PhaseListener {
@Inject
@Any
private Instance<MyOrderedUrlHandler> myOrderedUrlhandlers;
private Map<String, List<MyOrderedUrlHandler> orderedUrlHandlersMap;
@PostConstruct
void mapOrderedUrlHandlers() {
LOG.info("Executing postconstruct");
orderedUrlHandlersMap = Maps.newHashMap();
for(final MyOrderedUrlHandler urlhandler : myOrderedUrlhandlers) {
final String handles = urlhandler.url();
final List<MyOrderedUrlHandler> registeredHandlers = orderedUrlHandlersMap.get(handles);
if(registeredHandlers == null) {
registeredHandlers = Lists.newArraList();
}
registeredHandlers.add(urlHandler);
orderedUrlHandlersMap.put(handles, registeredHandlers);
}
}
}
/@ApplicationScope
//@会话范围
//@依赖的
公共类MyPhaseListener实现了PhaseListener{
@注入
@任何
私有实例myOrdereUrlHandlers;
私有映射根据的第5.4.1节,PhaseListener
不是托管bean,而是可注入的
根据第5.4.2节,托管bean必须支持生命周期注释@PostConstruct
和@PreDestroy
由于PhaseListener
不是JSF意义上的托管bean,因此根据规范,PhaseListener实现必须支持@PostConstruct
,PhaseListener
不是托管bean,而是可注入的
根据第5.4.2节,托管bean必须支持生命周期注释@PostConstruct
和@PreDestroy
由于PhaseListener
不是JSF意义上的托管bean,因此根据规范,PhaseListener实现必须支持@PostConstruct
,PhaseListener
不是托管bean,而是可注入的
根据第5.4.2节,托管bean必须支持生命周期注释@PostConstruct
和@PreDestroy
由于PhaseListener
不是JSF意义上的托管bean,因此根据规范,PhaseListener实现必须支持@PostConstruct
,PhaseListener
不是托管bean,而是可注入的
根据第5.4.2节,托管bean必须支持生命周期注释@PostConstruct
和@PreDestroy
由于PhaseListener
不是JSF意义上的托管bean,它不符合规范要求,即一个阶段侦听器实现必须支持@PostConstruct显示您的代码。您可能违反了@PostConstruct
的合同,如果您和一个显式默认构造函数呢?@Kukeltjeean默认构造函数?调用了phaselistener,问题是没有调用“@PostConstruct”。显式默认构造函数在这种情况下有什么帮助?我看到它已经得到了回答。这只是一个猜测,因为我以前注意到过(不再确定何时何地)一个缺少的构造函数阻止了另一个带注释的方法正常工作。幸运的是,现在看来情况并非如此。请显示您的代码。您可能违反了@PostConstruct
的合同,如果您和一个显式默认构造函数发生冲突怎么办?@Kukeltje默认构造函数是什么意思?调用了phaselistener,问题是没有调用“@PostConstruct”。显式默认构造函数在这种情况下有何帮助?我看到它已经得到了回答。这只是一个猜测,因为我以前注意到过(不再确定何时何地)一个缺少的构造函数阻止了另一个带注释的方法正常工作。幸运的是,现在看来情况并非如此。请显示您的代码。您可能违反了@PostConstruct
的合同,如果您和一个显式默认构造函数发生冲突怎么办?@Kukeltje默认构造函数是什么意思?调用了phaselistener,问题是没有调用“@PostConstruct”。显式默认构造函数在这种情况下有何帮助?我看到它已经得到了回答。这只是一个猜测,因为我以前注意到过(不再确定何时何地)一个缺少的构造函数阻止了另一个带注释的方法正常工作。幸运的是,现在看来情况并非如此。请显示您的代码。您可能违反了@PostConstruct
的合同,如果您和一个显式默认构造函数发生冲突怎么办?@Kukeltje默认构造函数是什么意思?调用了phaselistener,问题是没有调用“@PostConstruct”。显式默认构造函数在这种情况下有何帮助?我看到它已经得到了回答。这只是一个猜测,因为我以前注意到过(不再确定何时何地)一个缺少的构造函数阻止了另一个带注释的方法正常工作。幸运的是,现在情况似乎不是这样,即使我接受这个答案,在没有生命周期事件支持的情况下支持依赖项注入似乎有点奇怪。即使我接受这个答案,支持依赖项注入似乎有点奇怪RTE没有生命周期事件支持。尽管我接受这个答案,但在没有生命周期事件支持的情况下支持依赖项注入似乎有点奇怪。尽管我接受这个答案,但在没有生命周期事件支持的情况下支持依赖项注入似乎有点奇怪。