Jak @Inject w PhaseListener

DodałemPhaseListener dofaces-config.xml:

<lifecycle>
    <phase-listener>com.project.NotificationListener</phase-listener>
</lifecycle>

Klasa wydaje się być poprawna, ponieważ jest dość prosta.

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();
    }
}

Metoda „beforePhase” jest wywoływana poprawnie, jednak obiekt MyCDIStuff ma wartość NULL. Próbowałem użyć adnotacji@Singleton dla klasy, która najprawdopodobniej była niepoprawna i nie sprawiała też efektu wtrysku.

Czy istnieje sposób na wstrzyknięcie zarządzanych komponentów CDI wPhaseListener?

questionAnswers(2)

yourAnswerToTheQuestion