Spring MVC 3: Comment fournir du contenu dynamique à une page d'erreur pour les erreurs HTTP 404?
Ce que je veux:
Je veux fournir un modèle pour l'erreur HTTP 404 page. Au lieu d'écrire une erreur statique de la Page, ce qui est spécifié dans web.xml je veux utiliser un
exception contrôleur qui gère les erreurs HTTP 404.
Ce que j'ai fait:
Supprimé page d'erreur de balise à partir de la web.xml:
<error-page>
<error-code>404</error-code>
<location>/httpError.jsp</location>
</error-page>
et mis en œuvre l'exception suivante méthodes de gestionnaire à l'intérieur de mon AbstractController classe:
@ExceptionHandler(NoSuchRequestHandlingMethodException.class)
public ModelAndView handleNoSuchRequestException(NoSuchRequestHandlingMethodException ex) {
ModelMap model = new ModelMap();
model.addAttribute("modelkey", "modelvalue");
return new ModelAndView("/http404Error", model);
}
@ExceptionHandler(NullPointerException.class)
public ModelAndView handleAllExceptions(NullPointerException e) {
ModelMap model = new ModelMap();
model.addAttribute("modelkey", "modelvalue");
return new ModelAndView("/exceptionError", model);
}
Ce qui est fait:
Il travaille pour trouver des exceptions, mais pas de code d'erreur HTTP statut 404. Il semble que des erreurs HTTP 404 sont traitées par DispatcherServlet par défaut. Est-il possible de changer ce comportement?
Et comment puis-je rattraper les erreurs 404 dans mon gestionnaire d'exception?
Merci pour la référence croisée. Il fonctionne comme il est décrit dans l'autre post. Au lieu d'utiliser le @ExceptionHandler annotation, vous devez utiliser le @RequestMapping annotation, qui fait sens.Cheers
OriginalL'auteur Max | 2011-04-05
Vous devez vous connecter pour publier un commentaire.
Si vous souhaitez obtenir une dynamique de contenu dans votre page 404 ou toute autre page d'erreur, la carte de la page à un contrôleur dans votre printemps contexte.
Par exemple, déclarer un contrôleur nommé "404.htm" et essayez à la demande de la page /404.htm pour s'assurer que ça fonctionne,
puis dans votre web.xml écrire le code suivant :
OriginalL'auteur Prog Mania
Essayez avec cette url http://blog.codeleak.pl/2013/04/how-to-custom-error-pages-in-tomcat.html
Explique comment créer un contrôleur pour obtenir l'erreur et mettre les paramètres à whow dans le .jsp.
OriginalL'auteur Maria Rosa Jordán