在另一个ManagedBean中获取Session Scoped Bean数据

SXV*_*SXV 7 jsf-2

我试图在另一个Managed bean中获取会话范围的bean数据.当我这样做时,该值将变为null并给出java.lang.NullPointerException错误.我是JSF的新手,所以请记住,我可能会遗漏简单的事情.

这是SessionScoped Bean

    @ManagedBean
    @SessionScoped

    public class UserSessionBean {
      private superProcessId;

      //getter setter and other code
    }
Run Code Online (Sandbox Code Playgroud)

这是我正在尝试获取此数据的Managed Bean

@ManagedBean
public class AddProcessBean {
  @ManagedProperty(value="#{UserSessionBean}")
  private UserSessionBean sessionData;

  //Getter Setter for sessionData
  public UserSessionBean getSessionData() {
    return sessionData;
  }

  public void setSessionData(UserSessionBean sessionData) {
    this.sessionData = sessionData;
  }

  public void addAction() {
    System.out.println(getSessionData().getSuperProcessId());
  }
}
Run Code Online (Sandbox Code Playgroud)

par*_*lov 11

你的价值不高@ManagedProperty.使用:

@ManagedProperty(value="#{userSessionBean}")
Run Code Online (Sandbox Code Playgroud)

bean的默认名称与第一个字母较低的类名相同.此托管属性的bean的范围也应该是session或更低(view,request).