Bonjour,

je cherche a appelé une procedure stocké. l'appel se fait correctement mais les valeurs retourné par mes OutParametres sont totalement faux. Voici mon code
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
 
	private static final String b1="I_A";
	private static final String c1="I_B";
	private static final String a1="I_M";
	private static final String Result="O_R";
	private static final String Montant="O_A";
 
	private int montant;
	private String a;
	private int b;//verifgeronimo
	private int result;
	private String c;
	private String nameProc;
 
 
public CallStoredProcedure(DataSource dataSource, String nomProced){
		nameProc=nomProced;
	setDataSource(dataSource);	
	setFunction(false);
	setSql(nomProced);
	declareParameter(new SqlOutParameter(Result, Types.INTEGER ));//ici declarer les parametres de la procedure
	declareParameter(new SqlOutParameter(Montant, Types.INTEGER));
	declareParameter(new SqlParameter(a1, Types.VARCHAR));//ici declarer les parametres de la procedure
	declareParameter(new SqlParameter(b1, Types.INTEGER));//ici declarer les parametres de la procedure
	declareParameter(new SqlParameter(c1, Types.VARCHAR));//ici declarer les parametres de la procedure
	compile();
	}
 
	public Map execute() {
		Map inputs=new HashMap();
		inputs.put(a1,a);
		inputs.put(b1, b);
		inputs.put(c1, c);
		return execute(inputs);
		}
l'appel a la procedure
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
CallStoredProcedure mystored= new CallStoredProcedure(dataSource,sql);
 
				mystored.setA(a);
				mystored.setB(b);
				mystored.setC(c);
				results = mystored.execute();
La signature de laprocedure
Code : Sélectionner tout - Visualiser dans une fenêtre à part
CREATE OR REPLACE PROCEDURE CHECK_TEST( I_M IN  VARCHAR2, I_A   IN  INTEGER, I_B  IN  VARCHAR2,  O_R   OUT  INTEGER, O_A  OUT  INTEGER)
lors de l'execution aucune exception n'est declenché mais comme je l'ai dis precedament les valeurs retourné sont erronné : 0 , 0

Si quelqu'un a une idéé , je suis preneur.
Merci d'avance.