J'ai 2 stream (outputstream) générés séparément (test suite à pb de charset) à envoyer, un contenant le header et l'autre le contenu.
Dois-je les envoyer l'un après l'autre ?
ou
Dois-je les additionner (comment) et les envoyer ?
Version imprimable
J'ai 2 stream (outputstream) générés séparément (test suite à pb de charset) à envoyer, un contenant le header et l'autre le contenu.
Dois-je les envoyer l'un après l'autre ?
ou
Dois-je les additionner (comment) et les envoyer ?
C'est le header de quoi que tu envoies ? Le header de l'ensemble de des données contenues dans le deuxième stream (donc un seul header). Ou alors les headers de chacune des données contenues dans l'autre stream ?
Ci dessous le code:
Mon pb est que mon appli est déployée sur un serveur linux et me renvoie des maquettes Excel dont tous les caractères hors standard sont remplacés. N'ayant rien trouvé sur ce sujet je test le charset.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 //stream du fichier excel OutputStream out1 = new PrintStream(new ByteArrayOutputStream(), true, "IBM850"); //.................. //je récupère mon stream -> out1 //................... response.setHeader("Expires", "0"); response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0"); response.setHeader("Pragma", "public"); response.setContentType("application/vnd.ms-excel"); response.setHeader ("Content-Disposition", ";inline; filename=\""+fichier+"\""); //attachment final ServletOutputStream ouputStream = response.getOutputStream(); try {//envoi du flux ouputStream.flush(); ????? out1.flush(); ?????? } catch(final Exception e){e.printStackTrace();}finally {ouputStream.close();out.close();}