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 :

Vérification de formulaire unifié côté serveur et client


Sujet :

Servlets/JSP Java

  1. #1
    Membre expérimenté Avatar de Trademark
    Profil pro
    Inscrit en
    Février 2009
    Messages
    762
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 762
    Points : 1 396
    Points
    1 396
    Par défaut Vérification de formulaire unifié côté serveur et client
    Bonjour à tous,

    Je débute avec la programmation web et je ne suis pas encore très au fait des différentes librairies / framework qui pourraient me simplifier un peu la tâche. Voici mon "problème".

    Lorsqu'un client remplit un formulaire, celui-ci est tout d'abord contrôlé par un bout de code javascript pour éviter les requêtes inutiles vers le serveur. Les champs du formulaire sont ensuite "re-contrôlé" par le serveur qui ajoutent des tests supplémentaire (comme une vérification dans la bdd par exemple) impossible à faire côté serveur. Néanmoins il refait les tests déjà effectué par le javascript.

    Les tests sont donc codé deux fois, une fois en java et une fois en javascript. Le problème principal étant de maintenir les deux séries tests égales en parallèle (ainsi que les messages d'erreur).

    Que me conseilleriez-vous ?

    Merci d'avance.

  2. #2
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    Bonjour,
    Pas très clair ton explication :

    Citation Envoyé par Trademark Voir le message
    Bonjour à tous,

    Je débute avec la programmation web et je ne suis pas encore très au fait des différentes librairies / framework qui pourraient me simplifier un peu la tâche. Voici mon "problème".

    Lorsqu'un client remplit un formulaire, celui-ci est tout d'abord contrôlé par un bout de code javascript pour éviter les requêtes inutiles vers le serveur.
    Jusque là OK, nous te suivons bien.
    Mais par contre ça :
    Citation Envoyé par Trademark Voir le message
    Les champs du formulaire sont ensuite "re-contrôlé" par le serveur
    et ça
    Citation Envoyé par Trademark Voir le message
    qui ajoutent des tests supplémentaire (comme une vérification dans la bdd par exemple)
    impossible à faire côté serveur.
    ne se contredisent pas ??

    Citation Envoyé par Trademark Voir le message
    Les tests sont donc codé deux fois, une fois en java et une fois en javascript. Le problème principal étant de maintenir les deux séries tests égales en parallèle (ainsi que les messages d'erreur).
    Que me conseilleriez-vous ?
    Merci d'avance.
    On ne sait pas si tu as déjà commencé les dev, et veux une aide sur la façon de t'y prendre,ou tu veux te lancer et demander une aide sur le choix des technos.
    En général, ton approche au départ est un problème classique auquel on est confronté dans les applications. Il faut cependant dégager 3 types de contrôles à effectuer, les contrôles métier(avec requêtage en base de donnée comme tu l'as spécifié), les contrôles intermédiaires(niveau contrôleur, style si un champ est valorisé alors vérifier qu'un 2eme ne l'est pas...) et les contrôles de saisie simples(ceux pour lesquels il est inutile comme tu dis de faire un appel serveur).
    Cependant le javascript codé à la main devient de plus en plus déconseillé dans les framework classiques (style Struts2,JSF, etc...) , les composants graphiques qu'ils te proposent permettent tous gérer automatiquement les contrôles de saisie avec possibilité de personnalisation de message d'erreur.Toutefois ceci ne t'exonères pas des contrôles que tu peux faire au niveau de la couche contrôleur ou de la couche métier.Donc en résumé dans ton appli, il y'aura 3 niveaux de contrôles :
    1-Niveau Vue (si c'est JSF ou Struts2 ou Spring-MVC), alors il te faudrait juste utiliser les attributs de validation proposés par les composants
    2-Niveau contrôleur (dans tes controleurs)
    3-Niveau Modèle (controles faits par tes services)
    Je rappelle que tu peux très bien centraliser dans un fichier de propriétés tous les messages d'erreur utilisés aussi bien dans la vue que dans le contrôleur.
    J'espère t'avoir apporté des éléments de réponse.
    Vous avez peut être hâte de réussir et il n'y a rien de mal à cela...
    mais la patience est aussi une vertu; l'échec vous l'enseignera certainement..."

  3. #3
    Membre expérimenté Avatar de Trademark
    Profil pro
    Inscrit en
    Février 2009
    Messages
    762
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 762
    Points : 1 396
    Points
    1 396
    Par défaut
    Oui merci vous avez très bien ciblé ma demande et votre réponse m'aide

    Merci!

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 25/04/2012, 10h54
  2. Réponses: 3
    Dernier message: 30/10/2007, 14h12
  3. Serveur Multi-clients
    Par darsky dans le forum C++Builder
    Réponses: 5
    Dernier message: 16/04/2004, 09h53
  4. Création d'un Serveur Multi Client
    Par N*E*R*D dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 16/03/2004, 17h13
  5. JavaScript de vérification de formulaire
    Par [DreaMs] dans le forum XMLRAD
    Réponses: 6
    Dernier message: 26/02/2003, 13h48

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