Конструктор bean-объекта в области видимости, управляемый Spring, вызывается дважды при нажатии кнопки команды JSF - PullRequest
0 голосов
/ 01 ноября 2011

Я использую интеграцию JSF-Spring, я вызываю метод bean-объекта в области запросов под управлением Spring из JSP, используя JSF <h:commandButton>. Я не могу понять одну вещь: конструктор bean-компонента Spring вызывается дважды. Почему это происходит?

Вот управляющий компонент Spring:

@org.springframework.stereotype.Component
@org.springframework.context.annotation.Scope("request")
public class MyAction implements java.io.Serializable {

    public MyAction(){
        System.out.println("inside request scoped bean");
    }

Вот представление JSF:

<h:commandButton value="add" action="#{MyAction.add}" />

Ответы [ 2 ]

0 голосов
/ 13 января 2012

Я получил ответ, конструктор вызывался дважды из-за механизма прокси cglib в Spring.

0 голосов
/ 01 ноября 2011

Можете ли вы отладить, чтобы отследить, откуда вызывается конструктор? Уверен, что один из вызовов заключается в том, что его пытаются инициализировать из другого места, а другой - из приложения / ui

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...