Projets
Pages enfant
  • 3.2 Gestion des exceptions

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...

Même dans une application mûremure, il n'est de cas pour lesquels une exception ne puisse se produire. esup-commons offre une gestion des exceptions qui évite au développeur de recevoir le message traditionnel de Tomcat :



Ou encore celui de uPortal :
esup-commons permet de remonter les exceptions de manière propre, par exemple :

Cette gestion des exceptions est une véritable aide au développeur, qui peut ainsi connaître connaitre tout le contexte d'exécution au moment où s'est produite l'erreur :


| | |

...

Le gestionnaire d'exception se configure à l'aide du fichier /properties/exceptionHandling/exceptionHandling-example.xml, dans lequel on déclare le bean exceptionServiceFactory, à partir duquel sont produits les services de gestion des exceptions.

...

On utilisera par exemple :

Bloc de code
<bean
    id="exceptionServiceFactory"
     class="[org.esupportail.commons.]services.exceptionHandling.ExceptionServiceFactoryImplCachingEmailExceptionServiceFactoryImpl"
     parent="abstractApplicationAwareBean"
  >
   <property
 name="smtpService" ref="smtpService" />
   <property name="doNotSendExceptionReportsToDevelopersrecipientEmail"
      value="false"${exceptionHandling.email}" />
   <property name="smtpServiceexceptionViews" ref="smtpService"/>
  <property name="authenticationService" ref="authenticationService"/>
 >
    <map>
      <entry key="java.lang.Exception" value="go_exception" />
    </map>
  </property>
  <property name="recipientEmaillogLevel" value="webmaster@domain.edu"${exceptionHandling.logLevel}" />
   <property name="cacheManager" ref="cacheManager" />
   <property name="logLevelcacheName" refvalue="WARN" />
</bean>

...

* La propriété smtpService est le service d'envois des messages électroniques.

  • La propriété authenticationService est le service d'authentification, qui permet d'accéder aux informations relatives à l'utilisateur connecté afin de pouvoir ajouter cette information dans les messages d'erreur.  Cette propriété est facultative, en particulier en mode batch.
  • La propriété recipientEmail est l'adresse mail où seront envoyés les messages d'erreur.
  • La propriété cachemanager est le gestionnaire de cache.
  • La propriété logLevel indique le niveau de log des rapports d'exception (ERROR par défaut).

...