Bonjour,

La servlet qui me pose problème a pour rôle de créer une image, la plupart du temps tout se passe bien, mais de temps en temps lors de la sauvegarde de l'image (à la ligne : writer.write(null, image, iwp) la servlet s'arrête en ne levant aucune exception.

Avez-vous une idée de comment cela peut se produire ?

Merci.

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
 
private static final float COMPRESSION = 0.90f;
 
private static void saveImage(BufferedImage img,File file) throws IOException{
	Iterator<ImageWriter> iter = ImageIO.getImageWritersByFormatName("JPG");
	if (iter.hasNext()) {
		ImageWriter writer = (ImageWriter) iter.next();
		ImageWriteParam iwp = writer.getDefaultWriteParam();
		iwp.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
		iwp.setCompressionQuality(COMPRESSION);
 
		FileImageOutputStream output;
		try {
			output = new FileImageOutputStream(file);
			writer.setOutput(output);
			IIOImage image = new IIOImage(img, null, null);
			writer.write(null, image, iwp);
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}