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

Servlets/JSP Java Discussion :

Upload file sur remote serveur


Sujet :

Servlets/JSP Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 4
    Par défaut Upload file sur remote serveur
    Bonjour à tous
    Je débute en Jsp mais j'ai trouve l'uploadfile de Jakarta pour recuperer mes photos et les uploader, tout se passe bien si je les upload sur mon TOMCAT local ( avec GetServletContext() ca marche mais pas avec "localhost:8080/tmp) mais si j'essaie de les envoyer sur un serveur distant y'a plus rien qui marche...
    J'ai besoin d'aide svp!!
    J'ai essaye avec File savedFile = new File("http://www.toto.fr/..etc); ( error ->"Network path not found"ca marche pas
    et j'ai essayé aussi avec ceci error ->"Connection time out":



    boolean isMultipart = ServletFileUpload.isMultipartContent(request);
    DiskFileItemFactory factory = new DiskFileItemFactory();
    ServletFileUpload upload = new ServletFileUpload(factory);
    List items = upload.parseRequest(request);

    Iterator iter = items.iterator();
    while (iter.hasNext()) {
    DiskFileItem item = (DiskFileItem)iter.next();
    if (item.isFormField()) {
    String fieldName = item.getFieldName();
    if(fieldName.equals("name")) request.setAttribute("msg", "Thank You: " + item.getString());
    }
    File fullFile = new File(item.getName());
    if (fullFile.canRead()) {

    URL urlservlet = new URL("http://www.toto.fr/..etc");

    HttpURLConnection connImage = (HttpURLConnection)urlservlet.openConnection();

    connImage.getConnectTimeout();
    connImage.setDoInput(true);
    connImage.setDoOutput(true);
    connImage.setUseCaches(false);
    connImage.setRequestProperty("Content-Type","*application/octet-stream");

    DataOutputStream outputstream = new DataOutputStream(connImage.getOutputStream());

    FileInputStream fis = new FileInputStream(fullFile);
    byte[] tableauImage = item.get();
    while(fis.read(tableauImage)>=0) {
    outputstream.write(tableauImage, 0, tableauImage.length);
    }
    fis.read(tableauImage);
    fis.close();

    outputstream.flush();
    outputstream.close();


    //File savedFile = new File("//http://www.toto.fr/..etc", fullFile.getName());
    //try {
    //item.write(savedFile);
    } catch (Exception e) {
    throw new ServletException(e);}
    } else {
    System.outprintln("WARNING: it seems that file ["+ fullFile.getName()+ "] is not defined (probably the input was let empty)");
    }
    }

    Merci de votre aide

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Rappel:
    Citation Envoyé par feemorgane Voir le message
    J'ai essaye avec File savedFile = new File("http://www.toto.fr/..etc); ( error ->"Network path not found"ca marche pas
    tu m'étonne, File c'est pour des fichiers (donc local), ce que t'as mis entre parenthèse c'est une url

    Pour la deuxième partie, tu peux expliquer ce que tu essaie de faire? Envoi du fichier par PUT sur un serveur supportant cette commande? Envoi via un formulaire sur ce même serveur? *autre* chose?

  3. #3
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 4
    Par défaut
    je veux simplement envoyer les fichiers sur un autre serveur web...je sais pas si fileUpload le permet..

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par feemorgane Voir le message
    je veux simplement envoyer les fichiers sur un autre serveur web...je sais pas si fileUpload le permet..
    CommonsFileUpload gère le coté serveur d'un fileuplad (décodage du form en multipart/form data). Pour l'envoi sur un serveur, à partir de code, faut déjà savoir par quel moyen ton serveur accepte les fichier (comme j'ai dit: PUT, formulaire en multipart, webservice, autre?)

  5. #5
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 4
    Par défaut
    merci desolée pour ma precedente reponse..
    le serveur web de destination peut recevoir formulaire en multipart, il tourne avec php5 ( c'est pas moi qui le gere..)
    penses-tu que passer par un post avec HTTPClient serait plus simple? ( de mon coté j'ai une appli en JSP qui fonctionne sous TOMCAT)

  6. #6
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    commonshttpclient pour la partie envoi alors. Fait gaffe à bien remplir correctement le formulaire, comme l'aurais fait un navigateur

  7. #7
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 4
    Par défaut
    ok merci j'essaye avec httpclient, mais je crois que j'ai en plus des problemes avec le proxy ...
    j'ai des connections failed des que je mets une URL distante...

  8. #8
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    ben si t'as un proxy obligatoire là ou se trouve ton serveur, faudra rajouter la config du proxy dans commons http client

Discussions similaires

  1. [AJAX] Erreur 500 Ajax+php upload file sur serveur ubuntu
    Par Jordan-Tess dans le forum jQuery
    Réponses: 0
    Dernier message: 02/12/2014, 11h23
  2. Upload/download sur un serveur via le terminal
    Par RTK45 dans le forum Ubuntu
    Réponses: 2
    Dernier message: 30/01/2012, 21h03
  3. [Flex4] upload file et reponse serveur
    Par jlau89 dans le forum Flex
    Réponses: 1
    Dernier message: 12/07/2011, 12h11
  4. [IE 6] Probleme upload images sur un serveur avec IE
    Par cireme dans le forum IE
    Réponses: 1
    Dernier message: 18/07/2010, 18h23
  5. upload fichier sur le serveur
    Par cyclopsnet dans le forum JSF
    Réponses: 3
    Dernier message: 03/12/2009, 14h59

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