夥計我使用jsf 2.0與春天。 我使用@PostConstruc在託管bean中註釋了一個方法,但是如果在bean中沒有字段連接到jsf頁面,即使在jsf頁面中有一個操作方法連接到@PostConstruct方法,也不會調用@PostConstruct方法豆。 預先感謝您。@PostConstruct不工作,如果只聲明行動方法
的交代添加的代碼:
這對我BackingManagedBean
@ManagedBean(name="utenteBean")
@ViewScoped
public class UtenteBean extends SupportBean implements Serializable
雖然這是我的ControllerManagedBean
@ManagedBean(name="gestisciUtentiController")
@ViewScoped
public class GestisciUtentiController extends MessageSupportBean implements Serializable {
@ManagedProperty(value="#{utenteBean}")
private UtenteBean utenteBean;
public void setUtenteBean(UtenteBean utenteBean) {
this.utenteBean = utenteBean;
}
@PostConstruct
public void loadBean()
{
try
{
utenteBean.setUtentis(getFacadeFactory().getUtenteFacade().readAllOrdered(Utente.class, "username"));
}
catch (ApplicationException e)
{
setExceptionMessage(e.getLocalizedMessage(), e.getLocalizedMessageDetail());
}
}
究竟如何,是'@ PostConstruct'有用的,如果你沒有任何呈現視圖的東西?那時你基本上沒有什麼準備。你有什麼樣的代碼?什麼是功能要求? – BalusC 2011-04-22 21:49:41
我試圖讓不同類型的託管bean,例如我有ModelManagedBean具有頁面和ControllerManagedBean具有操作方法的所有屬性。現在我認爲在ControllerManagedBean中,我必須調用postConstruct方法來初始化,例如ModelManagedBean的List對象 – 2011-04-22 21:53:33
使模型成爲控制器的屬性。那麼它不應該是'@ ManagedBean'。 – BalusC 2011-04-22 21:59:33