J'ai une application JEE5 qui expose les services en utilisant des beans session (locaux).Comment masquer les détails RuntimeException du client EJB?
Lorsqu'une erreur interne se produit pendant l'exécution du service, une exception RuntimeException est levée et encapsulée par JBoss (5.0.1) dans une exception javax.ejb.EJBTransactionRolledbackException. Le problème est que les applications clientes recevant cette exception EJBTransactionRolledbackException peuvent accéder à des informations détaillées sur l'exception cause runtime, exposant l'architecture interne de mon application. Et je ne veux pas ça. Au lieu de cela, je voudrais que JBoss encapsule toujours RuntimeException levée par les beans de session exposés dans une seule (et simple) TechnicalException (sans cause).
Quelle est la meilleure façon d'y parvenir? (Utilisation d'intercepteurs? Utilisation de la configuration JBoss?)