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

Développement Web en Java Discussion :

Download de dossier


Sujet :

Développement Web en Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 56
    Par défaut Download de dossier
    Bonjour,

    J'ai pas mal cherché sur internet et j'ai été surprise de ne trouver que très peut de réponse. Je souhaite qu'un utilisateur client puisse downloader des documents depuis mon serveur.

    J'ai trouvé un code qui marche très bien lorsque je n'envoie qu'un seul fichier.

    Servlet download :
    Code JSP : 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
    35
    36
    37
    public class DownloadServlet extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
        static final long serialVersionUID = 1L;
        private static final int BUFSIZE = 4096;
        private String filePath;
     
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        	filePath = "le chemin jusqu'à mon fichier";
            File file = new File(filePath);
            int length = 0;
            ServletOutputStream outStream = response.getOutputStream();
            ServletContext context  = getServletConfig().getServletContext();
            String mimetype = context.getMimeType(filePath);
     
            // sets response content type
            if (mimetype == null) {
                mimetype = "application/octet-stream";
            }
            response.setContentType(mimetype);
            response.setContentLength((int)file.length());
            String fileName = (new File(filePath)).getName();
     
            // sets HTTP header
            response.setHeader("Content-Disposition", "attachment; filename=\"" + fileName + "\"");
     
            byte[] byteBuffer = new byte[BUFSIZE];
            DataInputStream in = new DataInputStream(new FileInputStream(file));
     
            // reads the file's bytes and writes them to the response stream
            while ((in != null) && ((length = in.read(byteBuffer)) != -1))
            {
                outStream.write(byteBuffer,0,length);
            }
     
            in.close();
            outStream.close();
        }
    }

    Je récupère le chemin (filePath) depuis une variable de session. Ce que je souhaiterais faire, c'est récupéré un dossier entier (dont j'ai le chemin) pour pouvoir ensuite proposer de télécharger l'intégralité de son contenu. Seulement, si je récupère le dossier et que je le parcours fichier par fichier, seul le premier fichier traité est proposé au téléchargement : je souhaite que ce soit le dossier tout entier que la fenêtre de téléchargement propose.

    Voilà, j'espère avoir été assez clair, n'hésitez pas à me dire s'il manque des informations.

    Merci de votre aide !

  2. #2
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 56
    Par défaut
    Visiblement personne ne sait... Je suis donc passée par un fichier Zip dans lequel j'ai mis le contenu de mon dossier et le résultat marche à merveille.

    Si quelqu'un veut le code, demandez le par MP !

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

Discussions similaires

  1. Affichage d'image et download de fichier depuis un autre dossier
    Par yasen77 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 11
    Dernier message: 31/07/2013, 23h24
  2. [Débutant] Download tous les fichier d'un dossier FTP
    Par Nako_lito dans le forum C#
    Réponses: 1
    Dernier message: 09/09/2011, 14h30
  3. Réponses: 1
    Dernier message: 13/04/2011, 01h43
  4. [Tableaux] Lister contenu dossier et le download
    Par moutey dans le forum Langage
    Réponses: 3
    Dernier message: 31/08/2007, 13h49
  5. Réponses: 10
    Dernier message: 28/05/2007, 19h13

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