我添加了PhaseListener
一个faces-config.xml
:
<lifecycle>
<phase-listener>com.project.NotificationListener</phase-listener>
</lifecycle>
该类似乎是正确的,因为它非常简单。
public class NotificationListener implements PhaseListener {
@Inject
private MyCDIStuff stuff;
@Override
public PhaseId getPhaseId() {
return PhaseId.RENDER_RESPONSE;
}
@Override
public void beforePhase(PhaseEvent event) {
this.stuff.doStuff();
}
}
'beforePhase' 方法被正确调用,但是 MyCDIStuff 对象为空。我尝试@Singleton
对很可能不正确的类使用注释,但它也没有使注入工作。
有没有办法在 中注入 CDI 托管 bean PhaseListener
?