Bonjour,
J’ai crée un service web qui fait convertir une image en String
Après j’ai utilisé le logiciel soapUI pour tester, mais il m’affiche tout le temps le message d’erreur suivant :
java.lang.reflect.InvocationTargetException
Voici les paramètres que je mets dans soapUI , et voici le code de mon service web

SOAPUI :
<def:obtenirImages soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<dossier xsi:type="soapenc:string" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">C:/Images/</dossier>
<nombre xsi:type="xsd:int">1</nombre>
C:/Images : le chemin d'image
1 : le nombre d'image

Code Web Service
import java.io.*;


public class Base64Encoder {
//----------------------------
//la methode ajouter
//------------------------------
public static String[] obtenirImages(String dossier, int nombre) throws Exception{
//System.out.println("Début");
File folder = new File(dossier);
FileFilter filter = new FileFilter() {
public boolean accept(File arg0) {
if (arg0.getName().contains(".jpg")) {
return true;
}

if (arg0.getName().contains(".bmp")) {
return true;
}

return false;
}
};

File[] listOfFiles = folder.listFiles(filter);

if (nombre == -1) {
nombre = listOfFiles.length;
}

String[] response = new String[nombre];

for (int i = 0; i < nombre; i++) {
response[i] = readFile(listOfFiles[i].getAbsolutePath()).toString();
}

return response;
}




public static byte[] readFile(String filename) throws IOException {
java.io.File file = new java.io.File(filename);
java.io.BufferedInputStream bis = new java.io.BufferedInputStream(new
java.io.FileInputStream(file));
int bytes = (int) file.length();
byte[] buffer = new byte[bytes];
int readBytes = bis.read(buffer);
bis.close();
return buffer;
}
}