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 :

jsf + primefaces "hibernate validator"


Sujet :

JSF Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 15
    Points : 7
    Points
    7
    Par défaut jsf + primefaces "hibernate validator"
    Bonjour,

    est-il possible sous jsf + primefaces de récupérer les messages de validation du bean utilisant les annotations hibernate validator.

    exemple :
    page xhtml
    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
     
    ......
    <p:panel header="New Person">  
     
             <h:panelGrid columns="3">  
                 <h:outputLabel for="firstname" value="Name: " />  
     
                 <p:inputText id="firstname"   
                         value="#{pprBean.firstname}" label="Firstname">  
                     <p:ajax event="blur" update="msg" />  
                 </p:inputText>  
                 <p:message id="msg" for="firstname" />  
     
             </h:panelGrid>  
         </p:panel> 
    .............
    bean :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     public class PersonBean {  
        @Length(max=7,message="doit contenir 7 caractères max")
         private String firstname;  
        ......
    étant habitué a richfaces j'utilisais <rich:ajaxvalidator> et <rich:message>, cependant avec primefaces je ne parvient a exploiter les annotations hibernate validator.

    d'avance merci!

  2. #2
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 21
    Points : 28
    Points
    28
    Par défaut
    Oui ton code est juste juste pour que ca fonctionne ajoute a ton inpute

    <p:inputText ..... update="msg" /> est ca fonctionne



  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    bonjour,

    j'ai testé cela ne fonctionne toujours pas, l'hibernate validator est bien instancié

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [org.hibernate.validator.engine.resolver.DefaultTraversableResolver]  Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
    mais aucun message n'est récupéré sur la page web

    Pour info j'utilise:
    primefaces 2.2.1
    jboss 6 final
    Mojarra 2.0.3

  4. #4
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 21
    Points : 28
    Points
    28
    Par défaut
    essaye avec h:inputText sinon tu peux montrer la totalité du code xhtml svp

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    bonjour,

    merci pour ta réponse rapide , mais ca ne donne rien avec le h:inputtext,
    ci-dessous le code xhtml en question c'est un test issu des demo sur le site de primefaces http://www.primefaces.org/showcase/ui/ajaxifyValidations.jsf , à la seule différence qu'eux utilisent des f:validator


    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
    <html xmlns="http://www.w3.org/1999/xhtml"
    	xmlns:ui="http://java.sun.com/jsf/facelets"
    	xmlns:h="http://java.sun.com/jsf/html"
    	xmlns:f="http://java.sun.com/jsf/core"
    	xmlns:p="http://primefaces.prime.com.tr/ui">
     
    <f:view>
    <h:head>
     
    </h:head>
    <h:body>
    <h:form>
     
        <p:ajaxStatus style="width:16px;height:16px;">
            <f:facet name="start">
                <h:graphicImage value="../design/ajaxloading.gif" />
            </f:facet>
     
            <f:facet name="complete">
                <h:outputText value="" />
            </f:facet>
        </p:ajaxStatus>
     
    	<p:panel header="New Person">
     
    		<h:panelGrid id="grid" columns="3">
    			<h:outputLabel for="firstname" value="Name: " />
    			<p:inputText id="firstname"  value="#{personBean.firstname}" >
    				<p:ajax event="blur" update="msg"  />
    			</p:inputText>
               <p:message id="msg" for="firstname" display="icon" /> 
     
    		</h:panelGrid>
    	</p:panel>
    </h:form>
     
     
    </h:body>
    </f:view>
    </html>

  6. #6
    Membre habitué Avatar de kimausoleil
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2004
    Messages : 126
    Points : 135
    Points
    135
    Par défaut
    Mais PersonBean, c'est ton entity ou ton managed-bean ?

    Perso, j'ai mis dans mon entity, et qd je valide et que le champs est trop long, alors il y a bien le message...

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par kimausoleil Voir le message
    Mais PersonBean, c'est ton entity ou ton managed-bean ?

    Perso, j'ai mis dans mon entity, et qd je valide et que le champs est trop long, alors il y a bien le message...

    Bonjour,

    PersonBean est mon managedbean la vérification se fait onblur avant d'avoir complété l'intégralité du formulaire et donc avant d'atteindre l'entity

  8. #8
    Membre habitué Avatar de kimausoleil
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2004
    Messages : 126
    Points : 135
    Points
    135
    Par défaut
    Ok, donc même test dans le managed-bean mais la validation s'effectue qd j'appuie sur le <p:commandButton> !

    ...

    si la taille est bonne, l'action se passe ;
    si la taille est trop longue, pas d'action (donc le validator marche ?) mais pas de message !

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par kimausoleil Voir le message
    Ok, donc même test dans le managed-bean mais la validation s'effectue qd j'appuie sur le <p:commandButton> !

    ...

    si la taille est bonne, l'action se passe ;
    si la taille est trop longue, pas d'action (donc le validator marche ?) mais pas de message !

    tout pareil!


    edit:
    heuuu non désolé j'ai répondu trop vite j'avais un <f:validator dans mon xhtml...

    donc pour moi aucune validation du managed bean avec les hibernate validator même si la chaine de caractére est trop longue l'action du <p:commandButton> passe pourtant coté serveur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INFO  [org.hibernate.validator.engine.resolver.DefaultTraversableResolver] Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.

Discussions similaires

  1. Cycle de vie JSF et Hibernate Validator
    Par FunkyBreizh dans le forum JSF
    Réponses: 2
    Dernier message: 16/07/2009, 14h42
  2. hibernate validator et messages JSF
    Par elbissat dans le forum Seam
    Réponses: 0
    Dernier message: 03/07/2009, 11h25
  3. JSF & Hibernate Validator
    Par wajdopovitch dans le forum JSF
    Réponses: 2
    Dernier message: 17/01/2009, 12h13

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