Bonjour à tous.

Ma question est simple... mais pénible! J'ai un pdf (une notice) à mettre à dispo aux utilisateurs via un bouton de téléchargement.

Cela me donne ceci:
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
	public static void viewPdf() {
	   String filename = "GestionBT/faces/docs/GU30282.pdf";
 
	   // use your own method that reads file to the byte array
	   File f = new File(filename);
	   byte[] pdf = read(f); 
 
	   FacesContext faces = FacesContext.getCurrentInstance();
	   HttpServletResponse response = (HttpServletResponse) faces.getExternalContext().getResponse();
	   response.setContentType("application/pdf");
	   response.setContentLength(pdf.length);
	   response.setHeader( "Content-disposition", "inline; filename=\""+filename+"\"");
	   try {
	       ServletOutputStream out;
	       out = response.getOutputStream();
	       out.write(pdf);
	   } catch (IOException e) {
	       e.printStackTrace();
	   }
	   faces.responseComplete();
	}
[/B]
Chose qui fonctionne... sauf que le chemin (et celui relatif) ne fonctionnent pas! Pourquoi? Parce que si je consulte les chemins, j'obtiens ceci:
1) E:\env_Dev\servers\jboss-4.0.3SP1\bin\GestionBT\faces\docs\GU30282.pdf
2) GestionBT\faces\docs\GU30282.pdf
donc on pointe dans le \bin de JBoss, et non dans le deploy de celui-ci (ce qui serait bien plus logique!).

Etant donné que je dev sous Windows, je ne veux pas de chemin "en dur", mais est-il possible d'identifier le path de déploiement de l'appli web? (soit, là temporairement dans mon cas :
E:\env_Dev\servers\jboss-4.0.3SP1\server\default\tmp\deploy\tmp29054GestionBT-exp.war\docs