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

Struts 1 Java Discussion :

centraliser les erreurs HTTP


Sujet :

Struts 1 Java

  1. #1
    Membre confirmé

    Inscrit en
    Juin 2005
    Messages
    1 155
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 1 155
    Points : 475
    Points
    475
    Par défaut centraliser les erreurs HTTP
    Hello les gens;
    J'ai mappé quelques erreurs HTTP (404, 408, 409...) vers une action (org.apache.struts.actions.ForwardAction toute bête) qui forward vers une jsp.
    j'aimerai sur ma jsp détecter le numéro de l'erreur et ainsi afficher quelque chose de propre. Comment faire ?

    Aussi je pourrais faire ce traitement dans une action que je developperait moi même et j'aurais cette fois ci plusieurs jsp (une par numéro d'erreur) Comment faire ça (juste le code pour pouvoir detecter le numéro de l'erreur) ?
    Laquelle des deux options est la meilleur ?

  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
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Tu as différent points d'appel dans le fichier web.xml de la même action ?
    Quelque chose comme ceci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     <error-page>
      <error-code>404</error-code>
      <location>/actionError.do</location>
     </error-page>
     <error-page>
      <error-code>500</error-code>
      <location>/actionError.do</location>
     </error-page>
    Dans ce cas, tu pourrais rajouter un paramètre pour l'action
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     <error-page>
      <error-code>404</error-code>
      <location>/actionError.do?cause=404</location>
     </error-page>
     <error-page>
      <error-code>500</error-code>
      <location>/actionError.do?cause=500</location>
     </error-page>
    Sinon, tu peux utiliser une jsp avec la directive
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <%@ page isErrorPage="true" ...>
    et utiliser l'objet "exception"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <%=exception.toString()%>
    ...
    <%=exception.printStackTrace()%>

  3. #3
    Membre confirmé

    Inscrit en
    Juin 2005
    Messages
    1 155
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 1 155
    Points : 475
    Points
    475
    Par défaut
    Tu as différent points d'appel dans le fichier web.xml de la même action ?
    Quelque chose comme ceci ?
    Exact.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <error-page>
      <error-code>404</error-code>
      <location>/actionError.do?cause=404</location>
     </error-page>
     <error-page>
      <error-code>500</error-code>
      <location>/actionError.do?cause=500</location>
     </error-page>
    tu veux dire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <error-page>
      <error-code>404</error-code>
      <location>/actionError.do?cause=methodePour404</location>
     </error-page>
     <error-page>
      <error-code>500</error-code>
      <location>/actionError.do?cause=methodePour500</location>
     </error-page>
    ?

  4. #4
    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
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Si actionError étend DispatchAction et que l'attribut parameter="cause" alors oui...
    Mais si actionError étend Action, cause serait un paramètre de la requête que tu pourras récupérer dans l'action par request.getParameter("cause")...

    A toi de choisir

  5. #5
    Membre confirmé

    Inscrit en
    Juin 2005
    Messages
    1 155
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 1 155
    Points : 475
    Points
    475
    Par défaut
    Ok c'est clair. Merci.

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

Discussions similaires

  1. [WD18] Comment ignorer les erreurs de certificats sur une requête HTTP
    Par zouzoukha dans le forum WinDev
    Réponses: 3
    Dernier message: 14/05/2015, 14h19
  2. [AC-2007] Probleme centraliser les erreurs
    Par lucViv dans le forum VBA Access
    Réponses: 2
    Dernier message: 19/03/2015, 21h14
  3. [SP-2007] Pages personnalisées pour les erreurs HTTP
    Par GreenFlag dans le forum SharePoint
    Réponses: 1
    Dernier message: 06/06/2014, 16h11
  4. Gérer les erreurs http en perl
    Par Olivier Regnier dans le forum Web
    Réponses: 9
    Dernier message: 09/11/2007, 11h22
  5. [Htaccess] Gérer les erreurs HTTP du type 404...
    Par Marshall_Mathers dans le forum Apache
    Réponses: 4
    Dernier message: 01/07/2004, 10h29

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