J'ai fait un projet comme celui-ci sample. Donc les contrôleurs sont comme çaSpring boot comment gérer throwable
package mypackagename.controller;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.RequestMapping;
@RestController
@RequestMapping("/")
public class StoresRestController {
@RequestMapping(method = RequestMethod.GET)
public String stores() {
return ...
}
}
J'aime manipuler tous les jetables et faire ma réponse unifiée adaptée aux besoins du client. Le problème est que je ne peux pas trouver un guide ou un échantillon pour le faire correctement. Tout d'abord, j'ai essayé ExceptionHandler
, avec Throwable
, mais cela n'a pas fonctionné, j'ai donc décidé de passer à autre chose. Ensuite, l'approche la plus proche que j'ai trouvée est this, alors j'ai essayé jersey, en ajoutant quelque chose comme this. Mais ça ne marche pas pour tous les jetables. En outre, il est ignorant mes contrôleurs, en se plaignant
o.g.jersey.internal.inject.Providers : A provider mypackagename.controller.StoresRestController registered in SERVER runtime does not implement any provider interfaces applicable in the SERVER runtime. Due to constraint configuration problems the provider mypackagename.controller.StoresRestController will be ignored.
Je recherchais cette erreur et a trouvé this, que je ne suis pas en utilisant ContainerResponseFilter
dans mon projet que j'ai fourni l'exemple ci-dessus. Donc, je suis désemparé. Le principal problème est de savoir comment gérer tous les jetables, mais si vous pouvez me donner quelques suggestions sur la façon de résoudre le problème , je serai très apprécié.
Merci, j'ai aussi essayé @ExceptionHandler. Mais si je comprends bien, ils ne sont pas conçus pour gérer tous les jetables. – hadilq
En fait, comme je l'ai expliqué, j'ai essayé ExceptionHandler avec throwable, mais ça n'a pas fonctionné, alors j'ai essayé d'autres solutions comme jersey. – hadilq
Il n'y a aucune exception spéciale que je veux attraper. Je veux avoir une réponse unifiée quand mon application jette toutes sortes d'exceptions. Par exemple, je ne veux pas d'horodatage dans ma réponse, qui est incluse dans les réponses printanières standard. – hadilq