Partage
  • Partager sur Facebook
  • Partager sur Twitter

Remplir un formulaire HTML via Java

    26 octobre 2017 à 23:22:13

    Bonjour,

    Je voudrais pouvoir remplir un champ de formulaire en passant par java car le programme se charge de récupérer la variable et de l'envoyer automatiquement à la page web.

    J'ai donc fais des recherches et j'ai trouvé comme solutions HttpClient, le code est fait, le retour se fait sans problème, le contenue html/php s'affiche dans le retour d'Eclipse avec ma variable mise en POST mais je n'arrive pas à faire le lien avec ma page web (hébergé en local sur WAMP). Le champ ne se remplis pas, la variable reste vide.

    Voici mon code HTML :

    - La page du formulaire

    <html>
    <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     <meta http-equiv="Content-Language" content="fr" />
     <title>
      test var post
     </title>
    </head>
    <body>
    
    <p>
        <br />
        Veuillez taper votre ID :
    </p>
    
    <form action="cible.php" method="post">
    <p>
        <input type="text" name="prenom"/>
        <input type="submit" value="Valider" />
    </p>
    </form>
    </form>
    </body>
    </html>

    - La page du formulaire de réception

    <!DOCTYPE html>
    <html>
        <head>
            <title>Ceci est une page de test avec des balises PHP</title>
            <meta charset="utf-8" />
        </head>
        <body>
    <p>
        Veuillez taper votre ID :
    </p>
    <form action="cible.php" method="post">
    <p>
        <input type="text" name="prenom" value="<?php echo $_POST['prenom'] ?>"/>
        <input type="submit" value="Valider" />
    </p>
    </form>
    <form action="test.php">
        <input type="submit" value="Precedent"/>
    
    </form>
        
    
        </body>
    </html>
    <?--value="<?php echo $_POST['prenom'] ?>" --?>

    - Et voilà le programme Java :

    import org.apache.commons.httpclient.HttpClient;
    
    import org.apache.commons.httpclient.methods.PostMethod;
    import org.apache.log4j.BasicConfigurator;
    
    import java.io.BufferedReader;
    
    import java.io.InputStreamReader;
    
    public class php {
    
    public static void main(String args[]) {
    BasicConfigurator.configure();
    // On cree le client
    
    HttpClient client = new HttpClient();
    
    // Le HTTPMethod qui sera un Post en lui indiquant l’URL du traitement du formulaire
    
    PostMethod methode = new PostMethod("http://localhost/cible.php");
    
    // On ajoute les parametres du formulaire
    
    methode.addParameter("prenom", "TEST"); // (champs, valeur)
    
    // Le buffer qui nous servira a recuperer le code de la page
    
    BufferedReader br = null;
    
    try
    
    {
    
    // http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpStatus.html
    
    int retour = client.executeMethod(methode);
    
    // Pour la gestion des erreurs ou un debuggage, on recupere le nombre renvoye.
    
    System.out.println("La reponse de executeMethod est : " + retour);
    
    br = new BufferedReader(new InputStreamReader(methode.getResponseBodyAsStream()));
    
    String readLine;
    
    // Tant que la ligne en cours n’est pas vide
    
    while(((readLine = br.readLine()) != null))
    
    {
    
    System.out.println(readLine);
    
    }
    
    }
    
    catch (Exception e)
    
    {
    
    System.err.println(e); // erreur possible de executeMethod
    
    }
    
    finally
    
    {
    
    // On ferme la connexion
    
    methode.releaseConnection();
    
    if(br != null)
    
    {
    
    try
    
    {
    
    br.close(); // on ferme le buffer
    
    }
    
    catch (Exception e) { /* on fait rien */ }
    
    }
    
    }
    
    }
    
    }

    Merci pour toute aide ^^


    • Partager sur Facebook
    • Partager sur Twitter
      19 janvier 2018 à 15:57:52

      Salut, 

      Je suis dans la même problématique que toi. As-tu trouver des solutions ? 

      • Partager sur Facebook
      • Partager sur Twitter
      cattia

      Remplir un formulaire HTML via Java

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown