問題
JSF 2.0では、
@ ManagedProperty
アノテーションを使用して別のBeanのフィールドにBeanをDIしながら、
@ManagedBean
@SessionScoped
public class HelloBean implements Serializable {
@ManagedProperty(value="#{message}")
private MessageBean messageBean;
-
MessageBean.java **
@ManagedBean(name="message")
@SessionScoped
public class MessageBean implements Serializable {
次のエラーメッセージが表示されます。
An Error Occurred:**
Unable to create managed bean helloBean. The following problems were
found: – Property messageBean for managed bean helloBean does not exist.
Check that appropriate getter and/or setter methods exist.
解決策
“helloBean”のフィールドに “messageBean”を挿入するには、
messageBeanセッターメソッドがsupply
でなければなりません。
-
HelloBean.java **
@ManagedBean
@SessionScoped
public class HelloBean implements Serializable {
@ManagedProperty(value="#{message}")
private MessageBean messageBean;
public void setMessageBean(MessageBean messageBean) {
this.messageBean = messageBean;
}
完了したら、エラーメッセージは消されるはずです。