2017-09-12 4 views
-1

Je souhaite ajouter un filtre à un projet existant et ne m'attends pas à ce que mon filtre affecte le processus d'origine dans un cas anormal. Dans tous les cas, le filtre d'origine doit être exécuté.Que se passe-t-il si un filtre renvoie des exceptions dans le servlet?

Alors, je veux savoir, comment dois-je traiter quand je surprends une exception:

  1. jeter l'exception
  2. Intercepter l'exception et appelez chain.doFilter();
  3. ne font rien, comme le code suivant :

    if (filter != null) { 
    
        filter.doFilter(req,resp,chain); 
        // should I catch the exception here? 
    } else { 
    
        chain.doFilter(req,resp); 
    } 
    

Merci à tous.

Répondre

0

nid votre try-catch bloc à l'intérieur if(filter!=null) Par exemple:

if(filter != null){ 
    try{} catch (Exception e){ 
     //do something 
    } 
} 

Vous pouvez également utiliser finally après catch pour tout nettoyer ou le code que vous voulez exécuter pas si une exception est pris ou non.