importjava.io.Serializable;importjava.util.ArrayList;importjava.util.Collection;importjava.util.Date;importjava.util.List;importjavax.enterprise.context.SessionScoped;importjavax.faces.application.FacesMessage;importjavax.faces.component.UIComponent;importjavax.faces.component.UIInput;importjavax.faces.context.FacesContext;importjavax.faces.model.SelectItem;importjavax.inject.Named;@Named@SessionScopedpublicclassPessoaMBimplementsSerializable{privatestaticfinallongserialVersionUID=1L;privatePessoapessoa=newPessoa();//Digo que a classe Pessoa.java virou uma propriedadepublicPessoaMB(){}publicPessoagetPessoa(){returnpessoa;}publicvoidsetPessoa(Pessoapessoa){this.pessoa=pessoa;}publicvoidvalidarEmail(FacesContextcontext,UIComponenttoValidate,Objectvalue){Stringemail=(String)value;if(email.indexOf('@')==-1){((UIInput)toValidate).setValid(false);FacesMessagemessage=newFacesMessage("O email não é valido");context.addMessage(toValidate.getClientId(context),message);}}publicCollection<SelectItem>getSexos(){Collection<SelectItem>itens=newArrayList<SelectItem>();for(Sexoenums:Sexo.values()){itens.add(newSelectItem(enums,enums.name()));}returnitens;}publicCollection<SelectItem>getCagos(){Collection<SelectItem>itens=newArrayList<SelectItem>();for(Cargoenums:Cargo.values()){itens.add(newSelectItem(enums,enums.name()));}returnitens;}publicvoidsalvar(){System.out.println(this.pessoa);}publicvoidnovo(){pessoa=newPessoa();}publicList<Pessoa>getPessoas(){List<Pessoa>pessoas=newArrayList<Pessoa>();pessoas.add(newPessoa("Anderson",8.700,"Admin","[email removido]",newDate(),Sexo.Feminino,Cargo.DESENVOLVEDOR));pessoas.add(newPessoa("Anderson",8.700,"Admin","[email removido]",newDate(),Sexo.Feminino,Cargo.DESENVOLVEDOR));returnpessoas;}}
M
magalhas1 like
Na sua classe Pessoa você só criou o construtor padrão.
Crie o método construtos como o lucastody mencionou.
Caso você queira que o objeto do tipo Pessoa seja criado sempre com esses parâmetros você pode apagar o método construtor vazio, para impedir que seja criado um objeto do tipo Pessoa sem passar os parâmetros.