JSF 2.0: Die verwaltete Bean x ist nicht vorhanden. Überprüfen Sie, ob geeignete Getter- und/oder Setter-Methoden vorhanden sind

JSF 2.0: Managed Bean x ist nicht vorhanden. Überprüfen Sie, ob die entsprechenden Getter- und / oder Setter-Methoden vorhanden sind

Problem

Wenn Sie in JSF 2.0 die Annotation@ManagedPropertyverwenden, um die Bean in das Feld einer anderen Bean zu verschieben,

HelloBean.java

@ManagedBean
@SessionScoped
public class HelloBean implements Serializable {

    @ManagedProperty(value="#{message}")
    private MessageBean messageBean;

MessageBean.java

@ManagedBean(name="message")
@SessionScoped
public class MessageBean implements Serializable {

Es wird die folgende Fehlermeldung angezeigt.

An Error Occurred:
Verwaltete Bean helloBean kann nicht erstellt werden. Die folgenden Probleme wurden gefunden: - Eigenschaft messageBean für verwaltetes Bean helloBean ist nicht vorhanden. Überprüfen Sie, ob geeignete Getter- und / oder Setter-Methoden vorhanden sind.

Lösung

Um die "messageBean" in das Feld "helloBean" einzufügen, werden diemessageBean setter method must be supply.

HelloBean.java

@ManagedBean
@SessionScoped
public class HelloBean implements Serializable {

    @ManagedProperty(value="#{message}")
    private MessageBean messageBean;

    public void setMessageBean(MessageBean messageBean) {
        this.messageBean = messageBean;
    }

Fertig, die Fehlermeldung sollte verschwunden sein.