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 :

Filtre et gestion de la réponse


Sujet :

Servlets/JSP Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 8
    Par défaut Filtre et gestion de la réponse
    Bonjour,

    Je suis sur un projet struts qui utilise Hibernate, et j'ai un filtre chargé d'ouvrir / fermer la transaction autour de mes actions, dont voici le code :
    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
     
    sf = HibernateUtil.getSessionFactory();
    try {
    	log.debug("Starting a database transaction");
    	sf.getCurrentSession().beginTransaction();
    	// Call the next filter (continue request processing)
    	chain.doFilter(request, response);
    	// Commit and cleanup
    	log.debug("Committing the database transaction");
    	sf.getCurrentSession().getTransaction().commit();
    } catch (StaleObjectStateException staleEx) {
    	log.error("This interceptor does not implement optimistic concurrency control!");
    	log.error("Your application will not work until you add compensation actions!");
    	throw staleEx;
    } catch (Throwable ex) {
    	ex.printStackTrace();
    	try {
    		if (sf.getCurrentSession().getTransaction().isActive()) {
    		log.error(ParametresMessages.getString("error.production.commit"));
    					sf.getCurrentSession().getTransaction().rollback();
    		}
    	} catch (Throwable rbEx) {
    				log.error(ParametresMessages.getString("error.production.commit"), rbEx);
    	}
    			throw new ServletException(ex);
    }
    Mon problème est le suivant : lorsqu'une erreur se produit lors du commit (la ligne : sf.getCurrentSession().getTransaction().commit(); ), comment afficher la pile d'erreur dans ma JSP ?

    En général, si une erreur se produit dans mes actions, soit je la catche et j'affiche un message d'erreur personnalisé dans ma jsp, soit non et tomcat s'en charge en me balançant la pile d'exceptions dans ma jsp.

    Par contre, ici, j'ai l'impression que la réponse est déjà renvoyée juste avant le commit, et comme Hibernate n'envoie ses requêtes que le plus tard possible (donc pile au moment du commit), la réponse est déjà partie et l'exception ne parvient pas à l'utilisateur (elle s'affiche bien dans la console, par contre).

    Merci d'avance

  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
    Pourquoi ne pas utiliser le request pour transmettre l'information à ta page...

    Si tu utilises Tiles, tu peux rajouter le traitement de cette variable dans le modèle.
    Sinon, peut-être as-tu déjà une page référencée dans toutes les autres (<jsp:include>) où tu pourrais le placer
    Dans le pire des cas, il faudrait rajouter un <jsp:include> à toutes les pages

    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. [XL-2007] Création au code de plusieurs boutons ActiveX et gestion de leur réponses
    Par Wini29 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 31/01/2013, 09h59
  2. Réponse temporelle d'un filtre de Butterworth
    Par olivier2 dans le forum Signal
    Réponses: 1
    Dernier message: 08/09/2007, 00h36
  3. Réponses: 8
    Dernier message: 12/06/2007, 20h58
  4. [TPTP] Gestion des filtres difficile
    Par ze veritable farf dans le forum Tests et Performance
    Réponses: 1
    Dernier message: 30/05/2007, 17h02
  5. [SQL] Système gestion dernier message + nombres sujets/réponses
    Par Dinan dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 23/02/2007, 09h09

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