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 :

Récupérer données formulaire HTML en JAVA


Sujet :

Développement Web en Java

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2015
    Messages : 20
    Points : 7
    Points
    7
    Par défaut Récupérer données formulaire HTML en JAVA
    Bonjour a tous,

    Je suis en train de créer un serveur JAVA. Pour cela je dois tout faire a la main sans servlet. J'ai créer un formulaire HTML avec la commande "out.println()" et j'aimerai savoir si c'est possible d'extraire les données du formulaire (sans utiliser PHP) afin de pouvoir les utiliser après.

    Merci d'avance

  2. #2
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    Citation Envoyé par Lowse Voir le message
    Je suis en train de créer un serveur JAVA.
    C'est indispensable ?
    Il y en a des gratuits qui fonctionnent vraiment très bien (Glassfish, Tomcat, ...).
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  3. #3
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    Citation Envoyé par Lowse Voir le message
    J'ai créer un formulaire HTML avec la commande "out.println()" et j'aimerai savoir si c'est possible d'extraire les données du formulaire (sans utiliser PHP) afin de pouvoir les utiliser après.
    C'est beau de vouloir faire son propre server web en Java pour sa formation personnelle, le challenge technique, voire juste par masochisme si on en a envie. Aussi faut-il comprendre comment tout çà fonctionne : le html et la balise form, ce que fait un submit, la notion requête http tout ça. En tout cas, les données ne sont pas en dur dans le formulaire, si ? Elles sont saisies par l’utilisateur en dur, et elles sont transmises par le navigateur au serveur, via une requête (http).
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2015
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    Je sais récupérer les données avec PHP mais je suis actuellement en stage et l'on me demande de ne pas utiliser ce langage. Les données sont bien saisies par l'utilisateur

  5. #5
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Lowse Voir le message
    Je sais récupérer les données avec PHP mais je suis actuellement en stage et l'on me demande de ne pas utiliser ce langage. Les données sont bien saisies par l'utilisateur
    Le principe de fonctionnement d'un formulaire est le même que le serveur soit en PHP, ou en Java (d'autant plus que c'est fait dans le client). Maintenant, avec un serveur standard JEE, tu peux récupérer ces paramètres avec une servlet (or tu n'en veux pas), soit par une jsp. Si c'est ton propre serveur, il te faut analyser le flux texte écrit sur la socket, en extraire headers, paramètres, etc. Tu peux trouver quelques bases pour commence sur ce tutoriel
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  6. #6
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    Ben le problème c'est qu'il s'agit d'une architecture complète : Serveur + gestion d'un site.
    je suis actuellement en stage
    Je suis en train de créer un serveur JAVA
    Ce n'est simplement pas possible.

    Comme l'a dit Joël, il te faudrait recréer tout les mécanismes serveur.
    En partant de rien avec Java (tu fais ta page HTML avec println !) il te faudrait des années pour le faire.

    Donc si tu es dans du "java obligatoire" tu dois utiliser un serveur Java.
    Alors le moins "coûteux" serait d'utiliser GlassFish + les pages JSF (utiliser Netbeans de préférence)
    Tu peux y arriver en quelques semaines en suivant des tutos pas à pas mais c'est pas génial !
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2015
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    Merci pour le tuto je m'y était inspiré pour faire mon serveur. Mon serveur fonctionne j'ai 3 pages simples déja crées. Une de mes pages a un formulaire et j'ai juste besoin de récupérer les données du formulaire

  8. #8
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    Mon serveur fonctionne j'ai 3 pages simples déja crées
    ???
    tu veux dire que dans le navigateur tu fais :
    et hop les pages apparaissent ?
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2015
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    oui j'ai ma page principale et deux bouton (un bouton pour chaque page) et sa fonctionne

  10. #10
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Si tu as suivi le tutoriel, tu as dû voir qu'à un moment on fait un socket = serversocket.accept() et que sur socket, on récupère un inputStream (socket.getInputStream()). Si tu lis tous les caractères de ce stream et que tu les affiches dans console, tu verras le flux de la requête. Il ne te reste plus qu'à analyser cette chaîne, pour trouver les emplacements des données qui t'interresse (les paramètres, l'url appelée, etc...). Attention, c'est différent les méthodes utilisées (POSt/GET)

    Par exemple, pour un post on aura :

    POST /truc/bidule/machin HTTP/1.1
    Host: www.trucmuche.fr
    Content-Type: application/x-www-form-urlencoded
    Content-Length: <length>
    
    param1=value2&param2=svalue2&param3=value3
    Donc, avec des expressions régulières et/ou les méthodes de la classe String, tu peux parser cette chaîne pour retrouver les paramètres et leurs valeurs. Tu le fais pour tous les types de requêtes que tu vas avoir besoin de traiter (le GET par exemple).
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2015
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    Justement en utilisant la méthode POST je n'arrive pas a afficher le corps de la requete et selon ce que j'ai vu sur internet c'est la que se trouve les valeurs que je veux récupérer

  12. #12
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Puisqu'un navigateur connecté à ton serveur parvient à afficher une page en HTML, c'est que tu as correctement implémenté le protocole HTTP dans le sens serveur -> client.
    Tu as fait la moitié du travail.
    Maintenant, ton serveur doit être capable d'analyser les données provenant du client. Tu as deux solutions : soit tu avance pas à pas en commençant par afficher tout ce que reçoit ton serveur lorsque le navigateur clic sur le "submit", soit tu lis les différentes RFC concernant HTTP en commençant par la RFC 2616. Les RFC sont très verbeuses alors je te conseille un mix des deux : tu affiches tout ce que reçoit ton serveur, provenant du client et tu réponds selon ce qu'explique les RFC.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

Discussions similaires

  1. [JAVA] [XIR2] Récupérer données univers BO en java
    Par mimilemoose dans le forum SDK
    Réponses: 1
    Dernier message: 22/09/2009, 15h22
  2. Récupération données formulaire html
    Par bidulee dans le forum Struts 1
    Réponses: 1
    Dernier message: 22/04/2009, 17h11
  3. Récupérer données formulaire via une boucle
    Par magy91 dans le forum Langage
    Réponses: 1
    Dernier message: 10/11/2008, 20h06
  4. Comment remplir formulaire HTML en java
    Par hyperman22 dans le forum Langage
    Réponses: 6
    Dernier message: 22/11/2007, 16h30
  5. récupérer données formulaire
    Par jadorelescss38 dans le forum ASP
    Réponses: 4
    Dernier message: 25/04/2007, 11h05

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