@PostConstruct не работает, если объявлен только метод действия - PullRequest
0 голосов
/ 23 апреля 2011

ребята, я использую JSF 2.0 с пружиной.Я аннотировал метод в управляемом компоненте с помощью @PostConstruc, но если в компоненте нет поля, связанного со страницей jsf, метод @PostConstruct не вызывается, даже если на странице jsf есть метод действия, связанный сBean.Заранее спасибо.

Добавлен код для объяснения:

это си мой 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());
        }
    }

1 Ответ

0 голосов
/ 23 апреля 2011

http://blog.icefaces.org/blojsom/blog/default/2009/04/23/Making-distinctions-between-different-kinds-of-JSF-managed-beans/ Я пытаюсь использовать этот подход. Вы думаете, что этот подход не является правильным? -

Я не уверен. В этой статье упоминается, что модель обычно помещается в область действия сеанса. Это на самом деле плохой подход. Внедрение bean-объекта с областью сеанса в bean-объект с областью запроса имеет смысл, если сферой действия, например, является зарегистрированный пользователь, а объект с областью запроса привязан к форме.

В вашем случае вы должны просто сделать компонент модели свойством компонента контроллера и использовать #{gestisciUtentiController.utenteBean.someProperty} вместо #{utenteBean.someProperty}.

У меня есть несколько вопросов о JSF-дизайне, но вы также можете найти их полезными:

...