bonjour,
comment faites-vous pour que votre servlet renvoie non pas une page html mais plutot un fichier pdf que le client va télécharger ?
merci
Version imprimable
bonjour,
comment faites-vous pour que votre servlet renvoie non pas une page html mais plutot un fichier pdf que le client va télécharger ?
merci
Salut,
Il faut procéder de la manière suivante:
1) Ecrire des headers de la response qui vont dire au navigateur que ce qui arrive est un fichier PDF et non pas une page HTML.
2) Obtenir le OutputStream de la response et ecrire de contenu de ton fichier dedans.Code:
1
2
3
4 httpServletResponse.setContentType("application/ms-excel"); httpServletResponse.addHeader("Content-disposition", "attachment; filename=nomDeFichier.pdf");
Suivant les browsers (en particulier avec IE) il est possible si tu utilises une connection HTTPS qu'il te faille setter qques headers concernant le contrôle de cache. Il est aussi très possible que tout marche très bien.Code:
1
2
3
4
5 OutputStream os = httpServletResponse.getOutputStream(); ... ecrire le fichier dans le stream... os.flush(); httpServletResponse.flush();
Bonne chance!