IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Struts 1 Java Discussion :

GROS bug avec IE [FAQ]


Sujet :

Struts 1 Java

  1. #1
    Membre actif Avatar de DrHelmut
    Homme Profil pro
    Software craftsman - JS, Java...
    Inscrit en
    Octobre 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Software craftsman - JS, Java...
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 117
    Par défaut GROS bug avec IE
    Bonjour,

    pour une appli web, j'ai réalisé une ActionStruts renvoyant un fichier au client.

    Jusque là tout va bien - et la FAQ struts m'a été bien utile - j'ai testé sous firefox 2 et... malheureusement le client est sous IE !

    Qu'à cela ne tienne, je teste sous IE (5, 5.5 ,6) et là c'est le drame :

    Au lieu d'afficher le nom du fichier, la fenêtre de téléchargement affiche le nom de la servlet (monAction.do?params=.....)

    J'ai passé 1/2 journée à tenter de trouver une solution, en vain !

    Code de l'ActionStruts :

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
     
    		long docId=Long.parseLong( request.getParameter("docId") );
     
    		DocumentHelper docHelper = DocumentHelper.getInstance();			MappedRecord pj = docHelper.recupererPJ(docId);
     
    		InputStream inputStream = (InputStream)pj.get("stream");
    		String fileName = (String) pj.get("file_name");
    		String mimeType = (String) pj.get("mime_type");
     
    		//récupération de la taille du fichier
    		int availableBytes=0;		
    		try {
    			availableBytes = inputStream.available();
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
     
    		byte [] data = new byte[availableBytes];
     
    		response.setContentType(mimeType);
    		response.setContentLength(availableBytes);
    		response.setHeader("Content-Disposition", "attachment; filename=\"" +  fileName.trim().substring(1,fileName.length()) + "\";");
     
    		OutputStream os = response.getOutputStream();
    		int count;
    	    while( (count = inputStream.read(data)) > -1 ) {
    	    	os.write(data, 0, count);
    	    }
    		os.flush();
    		os.close();
     
    		return null;		
    	}
    SVP aidez-moi, je pète un câble grave !!!

    (cf screenshots en pièce jointe)
    Images attachées Images attachées   

  2. #2
    Membre expérimenté Avatar de wace
    Inscrit en
    Septembre 2003
    Messages
    224
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 224
    Par défaut
    Je ne sais pas pu reproduire ton pb, mais je l'ai deja eu,

    en cherchant sur le forum, j'ai trouvé ca Servlet d'image et IE

    j'ai pensé que ca se rapprochait de ton problème,

    si ca ne fonctionne toujours pas, fait un signe que l'on se penche un peu plus sur le pb,


  3. #3
    Membre actif Avatar de DrHelmut
    Homme Profil pro
    Software craftsman - JS, Java...
    Inscrit en
    Octobre 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Software craftsman - JS, Java...
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 117
    Par défaut
    Mine de rien, wace, ta réponse m'a carrément aidé !

    La solution était ici, et je ne l'aurait jamais soupçonnée car la majorité des exemples que j'ai vus (FAQ & autres) montraient le contraire !

    il suffisait de retirer les doubles quotes autour du filename !!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    response.setHeader("Content-Disposition", "attachment; filename=" +  fileName.trim().substring(1,fileName.length()) + ";");
    IE c'est vraiment le boulet des navigateurs web....

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Gros bugs avec IDLE + PyScripter
    Par Ggamer dans le forum EDI/RAD
    Réponses: 4
    Dernier message: 17/09/2007, 09h43
  2. [SME] gros bugs ! avec "clamav" & "yum remove"
    Par flemzard dans le forum Autres
    Réponses: 0
    Dernier message: 17/08/2007, 20h27
  3. Gros bug SQL Server avec caractère "²"
    Par Oluha dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 26/05/2005, 14h31
  4. Gros Problème avec DirectShow et la méthode RELEASE
    Par Olivier Delmotte dans le forum DirectX
    Réponses: 3
    Dernier message: 10/03/2003, 18h10
  5. Gros problème avec JB8 et appli J2EE
    Par patbier dans le forum JBuilder
    Réponses: 10
    Dernier message: 07/03/2003, 10h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo