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 :

Gestion des erreurs, et remonté vers le client


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 34
    Par défaut Gestion des erreurs, et remonté vers le client
    bonjour,

    j'aimerais savoir comment vous avez l'habitude de gérer vos erreurs dans vos appli JSF.

    Par exemple la mienne (jsf+faces+richaces) ne se recharge jamais, tout est gérer en ajax.

    Donc par exemple lorsque je fais appel à une methode d'un de mes beans et qu'une erreur se produit, comment puis-je remonter et afficher cette erreur du coté client, dans un modalPanel par exemple.

    J'avoue que je n'ai pas beaucoup cherché encore, mais vos avis m'interessent

  2. #2
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Il suffit de stocker tes exceptions dans le FacesContext (méthode addMessage(...)).
    Après, il te faut les afficher grâce à un <rich:messages/> (ou <h:messages/>).
    Vu que tu utilises de l'Ajax, soit tu peux te servir de l'attribut ajaxRendered du <rich:messages/> (ou inclure un <h:messages/> dans un <a4j:outputPanel qui est ajaxRendered).

    Est-ce suffisant comme explication ?
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 34
    Par défaut
    oui ca pourrait le faire mais ca ne fonctionne pas, j'ai du louper un truc

    Code xml : 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
     
    <a4j:form>
     
     
     
     
    	<a4j:commandButton image="/static/img/button/modifier.gif"	action="#{bean.testError}"  reRender="message_id"/>
     
     
     
    	<rich:message id="message_id" styleClass="formError">
    		<f:facet name="errorMarker">
    			<h:graphicImage url="/static/img/error.gif" width="13px"/>
    		</f:facet>
    	</rich:message>
     
     
     
    </a4j:form>
    et dans mon bean

    Code java : 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
     
     
    	public void testError() {
     
     
    		addMessage("message_id","message","detail",FacesMessage.SEVERITY_INFO);
    	}
     
    public void addMessage(String id,String summary,String detail,FacesMessage.Severity severity){
    			FacesContext facesContext = FacesContext.getCurrentInstance();
    			FacesMessage facesMessage = new FacesMessage();
    			facesMessage.setSeverity(severity);
    			facesMessage.setSummary(summary);
    			facesMessage.setDetail(detail);
    			facesContext.addMessage(id, facesMessage);
    	}


    au debugger Java je passe bien dans la methode, j'ajoute le message mais à l'écran il n'y a rien qui s'affiche...

    merci

  4. #4
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Bonjour,
    Citation Envoyé par romaintaz Voir le message
    Vu que tu utilises de l'Ajax, soit tu peux te servir de l'attribut ajaxRendered du <rich:messages/> (ou inclure un <h:messages/> dans un <a4j:outputPanel qui est ajaxRendered).
    T'as fait comme indiqué par Romain ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 34
    Par défaut
    ouep j'ai testé avec ajaxRendered ca ne fonctionne pas...par contre je viens de tester avec rich:messageS et ça fonctionne....

  6. #6
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Il te manque l'attribut for pour >rich:message>, qui doit pointer vers l'id du composant concerné.

  7. #7
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Citation Envoyé par yoskater Voir le message
    ouep j'ai testé avec ajaxRendered ca ne fonctionne pas...par contre je viens de tester avec rich:messageS et ça fonctionne....
    Dans mon post, je parlais bien de rich:messages, pas rich:message

    N'oublie pas du coup !
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 34
    Par défaut
    hum, c'est pas faux...

    rich:message ne fonctionne pas de la même facon?

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

Discussions similaires

  1. Bonne gestion des erreurs d'un client/server
    Par gege22mars dans le forum Général Java
    Réponses: 3
    Dernier message: 03/04/2009, 10h55
  2. Réponses: 4
    Dernier message: 13/09/2006, 16h53
  3. [VB6] Gestion des erreurs dans une dll
    Par zimba-tm dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 02/08/2004, 11h20
  4. [XSLT]Est ce qu'il y'a la gestion des erreur en xslt ?
    Par miloud dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 04/02/2004, 17h19
  5. [LG]gestion des erreurs
    Par frontin dans le forum Langage
    Réponses: 3
    Dernier message: 29/11/2003, 22h41

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