in spring mvc app (3.1.4-release, servlet 2.5), not able display custom 403 error page when trigger handlerinterceptoradapter.
my web.xml :
<error-page> <error-code>404</error-code> <location>/404</location> </error-page> <error-page> <error-code>403</error-code> <location>/403</location> </error-page> my error controller :
@controller public class httperrorcontroller { @requestmapping(value="403") public modelandview error403(){ return new modelandview("/errors/403"); } @requestmapping(value="404") public modelandview error404(){ return new modelandview("/errors/404"); } } my handler interceptor :
public class csrfhandlerinterceptor extends handlerinterceptoradapter { @override public boolean prehandle(httpservletrequest request, httpservletresponse response, object handler) throws exception { // validate csrf token on post request only. if (request.getmethod().equalsignorecase("post")) { if (!csrftokenmanager.verifycsrftoken(request)) { response.senderror(httpservletresponse.sc_forbidden, "bad or missing csrf value"); return false; } } return true; } when senderror sent, have blank page in firefox , in ie. 404 exception working correctly can't figure out how make 403 display custom error page.
firefox screenshot: http://hpics.li/8b6ab9f
httpfox screenshot : http://hpics.li/b032ca0
** using apache-tomcat-7.0.42
thanks
i got similar problem.
for situation, figured out because error page response.forward , goto interceptor again. (infinite loop)
i.e., can try simplify /error/403 page plaintext: "here 403".
Comments
Post a Comment