Bonjour,

Tout d'abord, je ne sais pas si je suis sur le bon forum, mais vu que C'ets un soucis de DAO ... je tente ce sous-forum.

Bon l'idée c'est que j'ai des Entity, que je dois implementer un DAO.
Du coup, je me suis dit : DAOGenerique !!!

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
 
public class GenericDao<T>{ // implements IGenericDao<T>{
 
	@PersistenceContext(unitName = "parentDao")
	EntityManager entityMgr;
 
	private T type;
 
	public GenericDao(T type) {
		this.type = type;
	}
 
	public void delete(T c) throws DAOException {
		try{
			entityMgr.remove(c);
		}catch(Exception e){
			throw new DAOException("Error : Unable to delete object");
		}
	}
 
	public T getById(int id) throws DAOException {
		try{
			entityMgr.find(this.type.class, id);
			return null;
		}catch(Exception e){
			throw new DAOException("Error : Unable to find an object");
		}
	}
 
	public Collection<T> getList() throws DAOException {
		// TODO Auto-generated method stub
		return null;
	}
 
 
	public void save(T c) throws DAOException {
		entityMgr.persist(c);
 
	}
 
	public void update(T c) throws DAOException {
		entityMgr.refresh(c);
 
	}
}

Bon le soucis se situe ici :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
	public T getById(int id) throws DAOException {
		try{
			entityMgr.find(this.type.class, id);
			return null;
		}catch(Exception e){
			throw new DAOException("Error : Unable to find an object");
		}
	}
En effet j'utilise la persistance des EJB avec l'entityManager et la signature de la fonction find c'est
Code : Sélectionner tout - Visualiser dans une fenêtre à part
find(Class<T>, object o)
Bref j'arrive pas à obtenir le premier argument de cette méthode ...
J'ai tenté plein de trucs ... mais là j'ai plus d'idées ...

Quelqu'un à déjà rencontré ce problème ? Quelqu'un à une idée ?

Emilien