Arndt Schönbergs Weblog

Mittwoch März 18, 2020

JSF 2.3 - neue Injections für FacesContext usw.

In meinem Post

https://www.schoenberg-solutions.de/roller/arndtsBlog/entry/jsf-converter-mit-ejb-injection

hatte ich schon einiges zu den "neuen" Möglichkeiten in JSF Konvertern geschrieben. Mit JSF 2.3 wurde aber auch die Möglichkeit geschaffen Objekte von JSF wie den FacesContext zu injizieren. Um diese Feature nutzen zu können muss - wie bei den Konvertern - eine Bean existieren, die die Annotation

 
@FacesConfig(version = Version.JSF_2_3)
enthält. Mit dieser Voraussetzung alleine funktioniert das Injizieren jedoch nicht. besagte Bean muss ebenfalls die Annotation
 
@ApplicationScoped
um im Application Scope zu liegen. Andernfalls funktionieren die neuen Möglichkeiten nicht. Es ergibt sich also beispielsweise folgende Bean zur Konfiguration der neuen Features
 
package de.schoeso.jsf;

import javax.faces.annotation.FacesConfig;
import javax.faces.annotation.FacesConfig.Version;

// Aktiviert CDI build-in Beans
@FacesConfig(version = Version.JSF_2_3)
// Erlaubt Injection
@ApplicationScoped
public class ConfigBean {

    /** Konstruktor */
    public ConfigBean() {
    }

}
Vergleicht auch

https://github.com/javaserverfaces/mojarra#activating-cdi-in-jsf-23

Calendar

Feeds

Search

Links

Navigation