Spring MVC Аннотации и HandleInterceptors - PullRequest
0 голосов
/ 27 марта 2011

Я работаю над проектом, использующим Spring 3.x MVC, и реализовал наши контроллеры, используя аннотации. Недавно у нас появилось требование реализовать HandlerInterceptors, с чем у меня возникли некоторые проблемы. Когда я указываю в моей конфигурации (dispatcher-sevlet.xml), перехватчик

<bean id="myInterceptor" class="com.myProject.controllers.MyInterceptor" />
<bean id="handlerMapping" class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">
  <property name="interceptors">
    <list><ref bean="myInterceptor"/></list>
  </property>
</bean>

тогда все хорошо, то есть любой URL-адрес совпадает с кодом myInterceptor. Когда я пытаюсь добавить

 <property name="mappings">
    <props>
      <prop key="/addFile.request">myFileController
      </prop>
    </props>
  </property>

тогда я никогда не нажимал код myInterceptor ... Я также пытался реализовать приведенный выше код отображения, используя аннотации @RequestMapping.

1 Ответ

3 голосов
/ 27 марта 2011

Проще использовать тег <mvc:interceptors> для настройки перехватчиков, если вы используете конфигурацию на основе аннотаций.

Например,

<mvc:interceptors>
 <!-- This runs for all mappings -->
 <bean class="my.package.GlobalInterceptor"/>
 <mvc:interceptor>
  <!-- This one only runs for a specific URL pattern -->
  <mvc:mapping path="/admin/*"/>
   <bean class="my.package.AdminInterceptor"/>
  </mvc:interceptor>
</mvc:interceptors>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...