Note that there are some explanatory texts on larger screens.

plurals
  1. POSpring interceptor not work
    text
    copied!<p>I coded an interceptor as follows:</p> <pre><code>package org.mybatis.jpetstore.interceptor; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.mybatis.jpetstore.annotation.CsrfTokenCheck; import org.mybatis.jpetstore.tool.CsrfTokenTool; import org.springframework.web.method.HandlerMethod; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; public class CsrfTokenAnnotationInterceptor extends HandlerInterceptorAdapter { @Override public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3) throws Exception { } @Override public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3) throws Exception { } @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object ojbect) throws Exception { System.out.println("======================"); //if(ojbect instanceof HandlerMethod){ CsrfTokenCheck csrfTokenCheck = ((HandlerMethod) ojbect).getMethodAnnotation(CsrfTokenCheck.class); System.out.println("++++++++++++++++++++++"); if(csrfTokenCheck != null &amp;&amp; !new CsrfTokenTool().verify((HttpServletRequest) request)){ response.sendRedirect("http://www.google.com"); return false; } //} return true; } } </code></pre> <p>but it seems not work at all.(the codes depend on spring3.2)</p> <p>annotation in controller:</p> <pre><code>@CsrfTokenCheck public ModelAndView list(HttpServletRequest request, HttpServletResponse response) throws Exception { ModelAndView mav = new ModelAndView("category/category"); return mav; } </code></pre> <p>interface:</p> <pre><code>package org.mybatis.jpetstore.annotation; public @interface CsrfTokenCheck{ } </code></pre> <p>I also configued something as follows in my spring-config.xml:</p> <pre><code>&lt;bean id="requestMappingHandlerMapping" class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"&gt; &lt;property name="interceptors"&gt; &lt;list&gt; &lt;ref bean="csrfTokenAnnotationInterceptor" /&gt; &lt;/list&gt; &lt;/property&gt; &lt;/bean&gt; &lt;bean id="csrfTokenAnnotationInterceptor" class="org.mybatis.jpetstore.interceptor.CsrfTokenAnnotationInterceptor" /&gt; </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload