2つのマネージドBeanがあるとしましょう:セッションスコープでのクエリとログイン。
setQueryが呼び出されていることがわかりますが、パラメーターがnullであるため、メソッドcheck()が失敗します。クエリは単純な値ではなくオブジェクトであるため、Beanの「クエリ」を初期化するにはどうすればよいですか?
これは私のBeanの「ログイン」です(アノテーションを使用していません):
public class login {
private Query query;
public void setQuery(Query q) {
query = q;
}
public Query getQuery() {
return query;
}
public String check() {
... do s.th. with query
}
そしてfaces-config.xml:
...
<managed-bean>
<managed-bean-name>query</managed-bean-name>
<managed-bean-class>Query</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
<managed-bean>
<managed-bean-name>login</managed-bean-name>
<managed-bean-class>login</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
<managed-property>
<property-name>query</property-name>
<property-class>Query</property-class>
<value>#{query}</value>
</managed-property>
</managed-bean>
...