Spring 3.0.5, как определить перехватчик с настраиваемым путем URI - PullRequest
1 голос
/ 07 февраля 2011

Я использую пружину 3.0.5 MVC и пытаюсь определить LoginInterceptor для указанного пути /fx. Я посмотрел вверх и нашел способ использовать:

<mvc:interceptors>
    <!-- Changes the locale when a 'locale' request parameter is sent; e.g. /?locale=de -->
    <bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor" />
    <mvc:interceptor>
        <mapping path="/fx"/>
        <bean class="com.fxiapi.auth.LoginInterceptor" />
    </mvc:interceptor>
</mvc:interceptors>

Я хочу использовать это для любой страницы, кроме страницы входа в систему для определенного URI. Это их способ игнорировать URI страницы входа. Также, используя это, я получаю следующее исключение:

2011-02-07 11: 04: 22,756 ОШИБКА http-0.0.0.0-8680-1 Ошибка инициализации контекста org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: строка 31 в XML-документе из ресурса ServletContext [/WEB-INF/spring/appServlet/servlet-context.xml] недействительна; вложенное исключение - org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: обнаружен недопустимый контент, начиная с элемента 'mapping'. Ожидается один из {{* http://www.springframework.org/schema/mvc":mapping}'. в org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions (XmlBeanDefinitionReader.java:396)

Может кто-нибудь помочь, пожалуйста? Какая альтернатива, если я не могу использовать тег?

1 Ответ

4 голосов
/ 08 февраля 2011

Сообщение об ошибке говорит вам, что не так - вам нужен префикс пространства имен для элемента <mapping>:

<mvc:interceptor>
    <mvc:mapping path="/fx"/>
    ...
</mvc:interceptor>
...