Je construis une application de démarrage à ressort. J'essaie d'utiliser une manière décente de manipuler des réponses de repos lorsqu'une exception est soulevée. Donc, j'ai étendu le Voici ce que la classe J'utilise de la connexion pour la journalisation. P> J'ai trouvé des astuces pour faire face à cela, comme l'ajout d'un Toutes les explications Pourquoi la stacktrace n'est pas imprimée?
Merci à l'avance. P> p> ResponsitiyExceptionHandler code> dans une classe nommée
restrucresponseïtyexceptionHandler code>.
Le problème est que lorsqu'une exception est lancée, la standingTrace n'est pas imprimée dans la console. Lorsque je supprime cette classe
restrucseSentityExceptionHandler code>, la stacktrace est à nouveau imprimée dans la console!
restrucresponseïtexceptionHandler p>
Logger.Error ("Détails:", exception); Code> qui fonctionne bien et imprime la stacktrace, mais je préfère ne pas utiliser une solution comme celle-ci, car elle ne fonctionne que pour les exceptions accueillies par cette classe ... Les autres exceptions n'impriment pas la stacktrace. P>
3 Réponses :
Il n'est pas "imprimé" car vous gérez déjà l'exception dans restrucresponseentalyExceptionHandler. p>
Parce que vous manipulez une exception. Si vous souhaitez imprimer avec la manipulation, mettez Logger code> Intérieur
ExceptionnelHandler code> Méthodes. P>
StaketAce n'est pas imprimé car vous manipulez la réponse de la réponseExceptionHandler dans la restructurePonseyExceptionHandler par RestControllerAdvice et ne transmettez que le message d'erreur en réponse. Il vous souhaite l'imprimer spécialement, ajoutez un enregistreur dans votre méthode de guidon de guidon pour l'erreur I.E. E dans votre cas. P>