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.