Jsf 为什么是EJB';在@RequestScope bean中调用了两次的构造函数?

Jsf 为什么是EJB';在@RequestScope bean中调用了两次的构造函数?,jsf,ejb,Jsf,Ejb,我在托管bean中注入了一个EJB bean。它的构造函数被调用两次。 例如,我得到: com.logic.jsf.AdditionManagedBean created com.logic.Addition$$$view45 created com.logic.Addition created 我知道@PostConstruct,但我正试图理解为什么会发生这种情况。是因为代理,在这种情况下,我不应该在类的打印名称中看到代理相关的文字吗 @Stateless @LocalBean publi

我在托管bean中注入了一个EJB bean。它的构造函数被调用两次。 例如,我得到:

com.logic.jsf.AdditionManagedBean created
com.logic.Addition$$$view45 created
com.logic.Addition created
我知道@PostConstruct,但我正试图理解为什么会发生这种情况。是因为代理,在这种情况下,我不应该在类的打印名称中看到代理相关的文字吗

@Stateless
@LocalBean 
public class Addition{  
        public Addition(){
            System.out.println(this.getClass().getName() +" created");
        }


        public String getAddition(){
            return "Addition";
        }
}
注入:

@ManagedBean
@RequestScoped
public class AdditionManagedBean {

    @EJB
    Addition addition;

    public AdditionManagedBean(){
        System.out.println(this.getClass().getName()+" created");
    }

    public String getAddition(){
        return addition.getAddition();
    }
}

“是因为代理”是的。“在这种情况下,我不应该看到代理相关的文字吗?”什么?无论如何,这是相关的/重复的:打印的类的名称不应该与“代理”而不是“视图”相关吗?为什么你认为它不是代理?“是因为代理”是。“在这种情况下,我不应该看到与代理相关的文字吗?”什么?无论如何,这是相关的/重复的:打印的类的名称不应该与“代理”而不是“视图”相关吗?为什么你认为它不是代理?