Bonjour à toutes et à tous.

Tout d'abord je vous souhaite à toutes et tous une bonne et heureuse année 2009 et je vous remercie par avance de l'aide que vous pourrez m'apporter.

Contexte:
Réalisation d'une page de visualisation de pdf stocké en base de données.

Environement:
- Java J2EE jdk 1.5 (struts, spring)
- Serveur JBoss 4.0.5 en local
- Serveur de base de données MySQL en local

Description du problème:
J'affiche un pdf dans une iframe
Ce pdf est le résultat d'une action nommée openPdf.do
Lorsque je clique sur le bouton enregistrer du plugin Acrobat Reader le nom du fichier pdf par défaut est openPdf.pdf au lieu du nom de fichier specifié dans mon action (ex : mon_super_pdf.pdf).

Question:
Comment spécifier le nom de ce fichu fichier pdf lorsque je clique sur le bouton enregistrer de la visionneuse Acrobat Reader ?

Solution actuelle:
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
 
  String nomPDF = pdf.getDescription() + ".pdf"; // ex : mon_super_pdf.pdf
  response.setContentType("application/pdf");
  response.setHeader("Content-disposition", "inline; filename=\"" + nomPDF + "\"");
 
  OutputStream os = response.getOutputStream();
  ByteArrayOutputStream bos = new ByteArrayOutputStream();
 
  try {
    bos = pdf.getContent();
  } catch(Exception e) {
    cat.error("OpenPdf Exception : " + e.getMessage()); 
    response.sendRedirect("NoPdf.do");
  }
 
  response.setContentLength(bos.size());
 
  os.write(bos.toByteArray(), 0, bos.size());
  os.flush();
  os.close();
Cela ne fonctionne pas !



Voila, je pense que vous avez tous les elements pour me venir en aide.

Bonne journée à toutes et tous.
Et encore merci d'avance.

Scarz.