Olá a todos!
Estou com um probleminha no controle das minhas classes pessoa física e juridica.
Quado eu chamo meu metodo de listagem do meu facade ele não reconhece o retorno. e na lampadazinha de sugestões que abre do lado da linha de codigo com opções pra resolver o erro(Estou usando o NetBeans) aparece pra alterar o tipo de retorno. O erro é: estou pedindo um objeto do tipo pessoaFisica e estou obtendo um do tipo pessoa.
O que tenho que alterar no meu facade pra resolver isso?
Abaixo seguem minhas classes ControlePessoaFisica e meu Abstract Facade:
[code]package br.com.monitoria.controle;
import br.com.monitoria.entidades.Pessoa;
import br.com.monitoria.entidades.PessoaFisica;
import br.com.monitoria.facade.PessoaFacade;
import java.util.List;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.event.ActionEvent;
/**
*
-
@author Augusto
*/
@ManagedBean
@SessionScoped
public class PessoaFisicaControle {private Pessoa pessoa;
// private PessoaFisica selecionaPessoaFisica;
private PessoaFisica pessoaFisica;
@EJB
private PessoaFacade pessoaFisicaFacade;public PessoaFisicaControle() {
pessoa = new Pessoa();
pessoaFisica = new PessoaFisica();}
public void novo() {
pessoaFisica = new PessoaFisica();}
public PessoaFisica getPessoaFisica() {
return pessoaFisica;
}public void setPessoa(PessoaFisica pessoaFisica) {
this.pessoaFisica = pessoaFisica;
}public void salvar() {
pessoaFisicaFacade.salvar(pessoaFisica);
pessoaFisica = new PessoaFisica();
}public List listaTodos() {
return pessoaFisicaFacade.listaTodos()
}/*public void excluir(ActionEvent e) {
pessoaFisica = (PessoaFisica) e.getComponent().getAttributes().get(“parametroPessoaFisica”);
pessoaFisicaFacade.remover(pessoaFisica);
pessoaFisica = new PessoaFisica();
}
*/
// metodos alex\
public void deletar(PessoaFisica fisica) {
pessoaFisicaFacade.remover(fisica);}
/* public void selecionaFisica(PessoaFisica fisica){
selecionaPessoaFisica =fisica;
}
*/public void alterar(ActionEvent e) {
pessoaFisica = (PessoaFisica) e.getComponent().getAttributes().get(“parametroPessoaFisica”);
}public Pessoa getPessoa() {
return pessoa;
}public void setPessoa(Pessoa pessoa) {
this.pessoa = pessoa;
}/* public PessoaFisica getSelecionaPessoaFisica() {
return selecionaPessoaFisica;
}public void setSelecionaPessoaFisica(PessoaFisica selecionaPessoaFisica) {
this.selecionaPessoaFisica = selecionaPessoaFisica;
}
*/
}
[/code]
Abstract:
[code]/*
- To change this template, choose Tools | Templates
- and open the template in the editor.
*/
package br.com.monitoria.facade;
import java.util.List;
import javax.persistence.EntityManager;
public abstract class AbstractFacade {
private Class<entidade> entityClass;
protected abstract EntityManager getEntityManager();
public AbstractFacade(Class<entidade> entityClass) {
this.entityClass = entityClass;
}
public void salvar(entidade e){
getEntityManager().merge(e);
}
public void remover(entidade e){
getEntityManager().remove(getEntityManager().merge(e));
}
public List<entidade> listaTodos(){
return getEntityManager().createQuery("from "+entityClass.getSimpleName()).getResultList();
}
public Object recupera(Object id){
return getEntityManager().find(entityClass, Long.parseLong(id.toString()));
}
}
[/code]
Grato.