ManagedBeanCreationException:无法使用ManagedProperty为托管bean设置属性

时间:2013-04-30 17:38:42

标签: jsf-2 managed-property

我得到这个错误:“com.sun.faces.mgbean.ManagedBeanCreationException:当我运行我的网络应用程序时,没有se puede definir la propiedad procesos para el bean administrado procesos”。粗略翻译“无法定义托管财产处理的财产处理”

这是我的托管bean问题:

@ManagedBean(name = "procesos")
@ViewScoped
public class ProcesosBean implements Serializable {
    @ManagedProperty(value="#{user}")

    private List<VistaProcesosEntity> procesos;
    private LoginBean loginBean;

    @PostConstruct
    public void init(){
       UsuariosEntity user=loginBean.getCurrent();
       procesos=new ArrayList<VistaProcesosEntity>();

       if (user.getTipo().equalsIgnoreCase("Planta")) {
        procesos= Procesos.getALL();
        }else if(user.getTipo().equalsIgnoreCase("Exportadora")){
            procesos=Procesos.getALLbyExportadora(user.getUsuario());
        }  else if (user.getTipo().equalsIgnoreCase("Productor")){
            procesos=Procesos.getALLbyProductor(user.getUsuario());
        }

    }

    public LoginBean getLoginBean() {
        return loginBean;
    }

    public void setLoginBean(LoginBean loginBean) {
        this.loginBean = loginBean;
    }

    public List<VistaProcesosEntity> getProcesos() {
        return procesos;
    }

    public void setProcesos(List<VistaProcesosEntity> procesos) {
        this.procesos = procesos;
    }
}

1 个答案:

答案 0 :(得分:2)

@ManagedProperty(value="#{user}")

private List<VistaProcesosEntity> procesos;
private LoginBean loginBean;

上面应该是:

@ManagedProperty(value="#{user}")
private LoginBean loginBean;

private List<VistaProcesosEntity> procesos;

注释@ManagedProperty引用以下对象(因此在第一种情况下为procesos)。这导致了您的错误。