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

JSF Java Discussion :

Contrôle de saisie : validator


Sujet :

JSF Java

  1. #1
    Membre éclairé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2015
    Messages
    403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Février 2015
    Messages : 403
    Par défaut Contrôle de saisie : validator
    Bonjour,
    Je souhaite utiliser un validator sur un champ de saisie.
    J'ai suivi le tuto https://javaweb.developpez.com/faq/j...uxieme-methode
    Mais il ne se passe rien si je saisis par exemple des caractères de ponctuation ou spéciaux.
    Merci pour votre aide.

    Voici mon code : (page puis managed bean appelé variableNationaleManagerBean)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <div style="position: absolute; top: 450px; left: 450px">
                        <h:inputText id="name" value="#{variableNationaleManagerBean.name}"
                                     validator="#{variableNationaleManagerBean.validatePerson}"/>
                    </div>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    private String name;   +getter/setter
     
        public void validatePerson(FacesContext context, UIComponent component,
                Object value) throws ValidatorException {
            Pattern p = Pattern.compile("[a-zA-Z]+\\s+[a-zA-Z]+\\s+[0-9]+");
            Matcher m = p.matcher((String) value);
            if (!m.matches()) {
                throw new ValidatorException(new FacesMessage(
                        FacesMessage.SEVERITY_ERROR, "Entrée non valide",
                        "Entrée non valide"));
            }
        }

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Ça n'a rien d'étonnant, l'exemple est mauvais, d'ailleurs si tu lis bien ce qui est noté, il dit d'utiliser la même signature que dans l'exemple précédent, sauf que le nom de la méthode est validatePerson et devrais être validate.
    Autre chose, la classe du validator devrait implémenter l'interface Validator...
    Et pour finir, si la classe du validator n'a pas besoin d'injection, le mieux est d'utiliser la manière jsf de définir un validator, via l'annotation @FacesValidator("nomValidator"), ensuite, on référence par le nom dans la page xhtml <h:input ... validator="nomValidator"/> ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <h:inputText ...>
       <f:validator validatorId="nomValidator"/>
    </inputText>
    Tu dis qu'il ne se passe rien quand tu saisis des caractères spéciaux, tu t'attends à ce que le contrôle soit fait dès que tu saisis ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre éclairé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2015
    Messages
    403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Février 2015
    Messages : 403
    Par défaut
    OK je vais rectifier. Merci pour cette réponse.

Discussions similaires

  1. Datagrid : contrôle de saisie et validation
    Par exopartners dans le forum Silverlight
    Réponses: 8
    Dernier message: 20/04/2010, 16h56
  2. contrôle de saisie sur un espace
    Par oceane751 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 12/01/2006, 13h04
  3. contrôle de saisie menu déroulant
    Par shnouf dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 05/01/2006, 17h30
  4. contrôle de saisie
    Par oceane751 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 05/01/2006, 12h24
  5. [debutant] contrôle de saisie et formulaire
    Par oceane751 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 27/11/2005, 23h29

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