Bonjour
J'utilise l'api HTTPClient pour ouvrir un document afin de l'afficher à l'utilisateur
via la classe GetMethod je recupere le content-type et le content-disposition
que je retranscris dans ma response.
J'utilise un petit logiciel fort sympatique "HttpWatch" qui me permet de visualiser les données présente dans le header.
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 HttpClient client = new HttpClient(); GetMethod method = new GetMethod(url); Header toto[] = method.getResponseHeaders(); for(int i =0;i<toto.length;i++) { System.out.println(toto[i].getName() +" : " +toto[i].getValue()); if(toto[i].getName().equals("Content-Type")) { response.setContentType(toto[i].getValue()); } if(toto[i].getName().equals("Content-Disposition")) { response.setHeader(toto[i].getName(),toto[i].getValue()); filename = toto[i].getValue().substring(toto[i].getValue().indexOf("=")+1); } }
Celle-ci sont bien présente mais non prise en compte
pour le jpeg et le pdf par exemple lorsque je fais enregistrer sous je me retrouve avec 'Maservlet.pdf' le content-type est bien récupere mais le filename du content-disposition n'est pas pris en compte.
Et si j'ouvre l'url directement dans le browser ca marche.
Le problème en passant par la servlet ne se présente que sous IE (version 6.0.29) et sous Firefox aucun problème le filename ets bien pris en comtre
Partager