私が知りたかったのは、EJB Bean 内でマネージド Bean を呼び出すオプションはありますか。次のコードがあると想像してください。
@ManagedBean
@SessionScoped
public class MyManagedBean implements Serializable {
public String getUrl() {
return "http://www.google.com";
}
}
@Stateless
public class MyEJB {
@ManagedProperty(value = "#{myManagedBean}")
MyManagedBean myManagedBean;
public void setMyManagedBean(MyManagedBean myManagedBean) {
this.myManagedBean = myManagedBean;
}
public void call() {
// NullPointerException here
System.out.println(myManagedBean.getUrl());
}
}
私もこれを試しました:
@Stateless
public class MyEJB {
@EJB
MyManagedBean myManagedBean;
...
}
...しかし、別のMyManagedBean
インスタンスを返します。