Injetar Dao na Facade - Vraptor [RESOLVIDO]

2 respostas
F

Prezados,

Gostaria de saber como faço pra injetar um Dao na Facade corretamente, pois conforme o código que fiz abaixo,
está gerando um null pointer. A princípio anotei todas com @Component.

//classe de Controller
@Resource
public class ClienteController {

private final ClienteFacade clienteFacade;
private final Result result;

public ClienteController(ClienteFacade clienteFacade, Result result) {
	this.result=result;
	this.clienteFacade=clienteFacade;
}
@Path("/cliente/lista")
public void lista() {
	List<Cliente> clientes = clienteFacade.listar();
	result.include("clientes", clientes);
}

}

//classe de Facade

@Component

public class ClienteFacade {	

private  ClienteDao dao;

}

//classe Dao
@Component
public class ClienteDao extends GenericDAO{

private static final EntityManagerFactory emf =
		Persistence.createEntityManagerFactory("teste");

		public static EntityManager getEntityManager() {
		return emf.createEntityManager();
		}

}

2 Respostas

Lucas_Cavalcanti

Só receber o dao no construtor da facade.

F

valeus Lucas !, funcionou

Criado 11 de abril de 2013
Ultima resposta 13 de abr. de 2013
Respostas 2
Participantes 2