簡體   English   中英

將值設置為ManagedProperty

[英]Set value to ManagedProperty

我正在嘗試為ManagedProperty設置一個值,但是當我嘗試打印此結果時卻得到了空結果。 我想將Bean類設置為在查詢中使用它。 我一直在嘗試設置String,Class,但是每次都返回null值。 誰能幫我?

@ManagedBean
public class FilialBean extends BaseBean implements Serializable{

private Filial filial;
private List<Filial> filiais;

@ManagedProperty("#{entidadeService}")
private EntidadeService service;


@PostConstruct
public void init(){

    service.setFaces(Filial.class);
    filial = new Filial();
    filiais = (List<Filial>) (List) service.getbasesEntidades();

}

//GETTERS AND SETTERS

}
@ManagedBean(name="entidadeService", eager=true)
@ApplicationScoped
public class EntidadeService implements Serializable{

private List<EntidadeBase> basesEntidades;  
private Class faces;

@PostConstruct
public void init(){

    System.out.println(faces.getSimpleName());
    try{
      EntityManager manager = JPAUtil.getEntityManager();
      Query query = manager.createQuery("SELECT e FROM Filial e WHERE e.ativo = :ativo");
      query.setParameter("ativo", true);
      this.basesEntidades = query.getResultList();
    }
    catch(Exception e){

        e.printStackTrace();
    }
}


public List<EntidadeBase> getbasesEntidades() {
    return basesEntidades;
}

public Class getFaces() {
    return faces;
}

public void setFaces(Class faces) {
    this.faces = faces;
}
}

您是否檢查過@ManagedBean在兩個類中是否具有相同的軟件包?

我遇到了同樣的問題,一個具有空值的屬性執行Post Construct方法,這就是問題所在,一個類具有javax.annotation.ManagedBean(CDI)注釋,另一個類具有javax.faces.bean.ManagedBean(JSF)注釋。

就我而言,我需要兩個帶有JSF批注的類...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM