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

Applets Java Discussion :

PostMethod et fichiers


Sujet :

Applets Java

  1. #1
    Invité(e)
    Invité(e)
    Par défaut PostMethod et fichiers
    Salut,
    J'ai trouvé une méthode qui permet de posté en JAVA et cela marche bien je récupère bien dans ma page asp mes paramètres. Mais après avoir cherché je ne trouve pas comment poster un fichier si quelqu'un aurait une solution ?

    Merci

    Voici le code que j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    PostMethod post = new PostMethod("http://www.start-up.fr/test/asp.asp?test=123");
    		post.addParameter("essaiA", "aaaeee");
    		post.addParameter("essaiB", "bbbeee");

  2. #2
    Invité(e)
    Invité(e)
    Par défaut
    Enfin réussi avec cette méthode :
    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
    35
    36
    37
    38
    39
    HttpClient client = new HttpClient();
    	        MultipartPostMethod mPost = new MultipartPostMethod(url);
     
     
    	        // Send any XML file as the body of the POST request
    	        File f1 = new File("C:/aa.jpg");
     
    	        try {
    				mPost.addParameter("monFichier", f1);
     
    			} catch (FileNotFoundException e) {
    				// TODO Bloc catch auto-généré
    				e.printStackTrace();
    			}
     
    	        try {
    				int statusCode1 = client.executeMethod(mPost);
     
    				if (statusCode1 == HttpStatus.SC_OK) {
                        appendMessage(
                            "Upload complete, response=" + mPost.getResponseBodyAsString()
                        );
                    } else {
                        appendMessage("Upload failed, response=" + HttpStatus.getStatusText(statusCode1) + "   "+mPost.getResponseBodyAsString()
                        );
                    }
     
    			} catch (HttpException e) {
    				// TODO Bloc catch auto-généré
    				e.printStackTrace();
    			} catch (IOException e) {
    				// TODO Bloc catch auto-généré
    				e.printStackTrace();
    			}
     
     
    	        System.out.println("statusLine>>>" + mPost.getStatusLine());
    	        mPost.releaseConnection();
    	        System.out.println("OK");
    Et je le récupère avec ce code php :
    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
    35
    36
    37
    38
    39
    40
    41
    42
    TEST
    <br>
     <?php
    // BIIEN CHANGER monFichier selon parametre mis dans JAVA
     if(isset($_FILES['monFichier']))
     {
     unset($erreur);
     $extensions_ok = array('png', 'gif', 'jpg', 'jpeg');
     $taille_max = 1000000;
     // DOSSIER DESTINATION
     $dest_dossier = 'photo/';
     // utilisez également des slashes sous windows : $dest_dossier = 'd:/damien/photos/';
     // vérifications
     if( !in_array( substr(strrchr($_FILES['monFichier']['name'], '.'), 1), $extensions_ok) )
     {
     $erreur = 'Veuillez s&eacute;lectionner un fichier de type png, gif ou jpg !';
     }
     elseif( file_exists($_FILES['monFichier']['tmp_name'])
     and filesize($_FILES['monFichier']['tmp_name']) > $taille_max)
     {
     $erreur = 'Votre fichier doit faire moins de 500Ko !';
     }
     // copie du fichier
     if(!isset($erreur))
     {
     $dest_fichier = basename($_FILES['monFichier']['name']);
     // formatage nom fichier
     // enlever les accents
     $dest_fichier = strtr($dest_fichier,
     'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
     'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
     // remplacer les caracteres autres que lettres, chiffres et point par _
     $dest_fichier = preg_replace('/([^.a-z0-1]+)/i', '_', $dest_fichier);
     // copie du fichier
     move_uploaded_file($_FILES['monFichier']['tmp_name'], $dest_dossier.$dest_fichier);
     echo($_FILES['monFichier']['tmp_name']);
     }
     else{
     echo($erreur);
     }
     } 
     ?>
    Dernière modification par Invité(e) ; 06/06/2008 à 11h03.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2011
    Messages : 40
    Points : 23
    Points
    23
    Par défaut
    Bonjour à tous!

    Je me permets de revenir sur ce post car j'essaie de le mettre en pratique mais malheureusement sans succès pour le moment... J'essaie, à partir de mon appli Java, via la méthode post, d'envoyer un fichier vers une page php.

    J'ai importé la bibliothèque httpClient 4.1 de Apache.

    Je peux donc écrire des trucs du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    HttpClient client = new HttpClient() {..............}
    Ça passe!

    Par contre, je n'arrive pas à écrire ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    URL url = new URL("http://..................Retour.php");
    PostMethod mPost = new PostMethod(url);
    Eclipse me dit : "PostMethod n'est pas reconnu comme type valide"

    J'ai oublié de faire quelque chose?

    Merci d'avance pour vos suggestions et bonne journée à tous!

    Thomas.

  4. #4
    Membre du Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Avril 2011
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2011
    Messages : 48
    Points : 61
    Points
    61
    Par défaut
    Bonjour,

    Désolé de remonter un aussi vieux post mais j'ai le même problème que Supersonik. Talend me dis la même chose : "PostMethod n'est pas reconnu comme type valide".
    J'ai importé la lib : org.apache.commons.httpclient.*; sans succès.

    Merci à vous

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 155
    Points : 85
    Points
    85
    Par défaut
    Bonjour,

    Essaie d'importer : org.apache.commons.httpclient.methods.PostMethod
    Essaie sinon de télécharger l'API HTTPClient 3.1
    Dans la version 4.1 il n 'y a pas de classe PostMethod.

Discussions similaires

  1. fichier mappé en mémoire
    Par WinBernardo dans le forum Delphi
    Réponses: 7
    Dernier message: 01/12/2006, 09h38
  2. Réponses: 5
    Dernier message: 20/08/2002, 18h01
  3. Lire 1 bit d'un fichier en C
    Par Anonymous dans le forum C
    Réponses: 3
    Dernier message: 23/05/2002, 18h31
  4. Comparer des fichiers de données : Quel Langage ?
    Par Anonymous dans le forum Langages de programmation
    Réponses: 6
    Dernier message: 24/04/2002, 22h37
  5. Fichier PDOXUSRS.NET
    Par yannick dans le forum Paradox
    Réponses: 5
    Dernier message: 05/04/2002, 09h45

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