Bonjour,
je développe en C et Java en utilisant JNI (un programme Java appelle des fonctions C), et je souhaite mettre à la disposition du programme C une méthode Java.
La méthode est définie dans ma classe Java (elle prend 2 strings en entrée et génère un string en sortie):
Dans mon programme C, je la retrouve comme ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
La méthode est reconnue et peut être appelée. Si je rajoute, après le GetMethod, quelque chose comme ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
j'optiens bien la chaîne générée par la méthode java.
Code : Sélectionner tout - Visualiser dans une fenêtre à part jresult = (*env)->CallObjectMethod(env, objet, mid);
Mon problème, c'est le passage de paramètres à ma méthode java. Je crée un jobjectArray args, et je le remplis comme ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
Lorsque j'appelle ma méthode avec les arguments:
je me retrouve avec une erreur lors de l'exécution:
Code : Sélectionner tout - Visualiser dans une fenêtre à part jresult = (*env)->CallObjectMethod(env, objet, mid, args);
Ai-je mal créé mon objectArray ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
Merci !

 

 
		
		 
         
 

 
			
			

 
   


 [JNI] problème de création d'un jObjectArray
 [JNI] problème de création d'un jObjectArray
				 Répondre avec citation
  Répondre avec citation
Partager