Используя @Named("XYZ") и @SessionScoped перед объявлением класса, сеансовый компонент создается, но эти компоненты не сохраняются в карте сеансов.
Карта сеанса проверяется как
окончательный контекст FacesContext = FacesContext.getCurrentInstance(); Объект obj context.getExternalContext().getSessionMap().get("XYZ");
Когда я помещаю управляемый сеансовый компонент JSF в Faces-config.xml, как это
<managed-bean>
<managed-bean-name>XYZ</managed-bean-name>
<managed-bean-class>blah.blah.XYZ</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
Я могу найти карту сеанса в порядке.
Кажется, что компоненты CDI не хранятся в карте сеансов.
Обратите внимание, что bean.xml существует в моем проекте.