Bonjour,

j'ai un petit soucis avec l'introspection :

mon test :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
MonObjet result  = null ; 
		try {
			result  = (DefaultParams) this.invokePrivateMethod("fillEntityBean", new Class[]{Long.class, Long.class, Long.class, Long.class,Long.class}, idTechnic, idProfil, idMotif,idGroupe,idSource );
		} catch (InvocationTargetException e) {
			e.printStackTrace();
			fail();
		}

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
 
private Object invokePrivateMethod(String methodName, Class[]paramType, Object ... param) throws InvocationTargetException{
 
		Method method;
		Object result = null ; 
		try {
			method = MonObjet.class.getDeclaredMethod(methodName, paramType);
			method.setAccessible(true);
			result = method.invoke(MonObjet.class, param);
		} catch (SecurityException e) {
			e.printStackTrace();
			fail();
		} catch (NoSuchMethodException e) {
			e.printStackTrace();
			fail();
		} catch (IllegalArgumentException e) {
			e.printStackTrace();
			fail();
		} catch (IllegalAccessException e) {
			e.printStackTrace();
			fail();
		} catch (InvocationTargetException e) {
			throw e ; 
		}
 
		return result; 
 
	}
la méthode testée :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
private MonObjet fillEntityBean(Long idProfil, Long idMotif,
			Long idGroupe, Long source) {
 
		DefaultParams entity = new DefaultParams();
 
		entity.setProfilId(idProfil);
		entity.setMotifId(idMotif);
		entity.setGroupeId(idGroupe);
		entity.setSource(source);
 
		return entity;
 
	}

Et mon soucis est que je ramasse toujours : java.lang.IllegalArgumentException: object is not an instance of declaring class

Je ne vois pas pourquoi, ma méthode prend des Long en entrée, je lui en donne mais ca ne semble pas lui plaire.

Auriez vous des idées sur le sujet ?

merci d'avance

Sébastien