Bonjour,

J'ai une action qui fait écrit certaines données dans un fichier Excel puis ensuite fait d'autres actions (sauf si des exceptions ont été levées pour l'écriture de ce fichier).

Seul problème : si l'utilisateur clique sur le bouton annuler, le reste des traitements de mon action sont quand-même effectués puisque je ne sais pas intercepter le clic sur ce bouton.

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
File fTemp = new File(servFileName);
response.setHeader("Content-length", "" + fTemp.length());
response.setHeader("Content-disposition", "attachment; filename=\"" + "myFic_"  + sNow + ".xls" + "\"");
response.setContentType("application/x-msdownload");
response.setHeader("Pragma", "public");
response.setHeader("Cache-control", "must-revalidate");
 
int count;
int countTotal = 0;
byte buf[] = new byte[4096];
BufferedInputStream is = new BufferedInputStream(new FileInputStream(fTemp));
out = response.getOutputStream();
while ((count = is.read(buf)) > -1) {
countTotal += count;
out.write(buf, 0, count);
}
if (countTotal > 0) {
out.flush();
out.close();
}
is.close();
Merci.