SimpleUrlHandlerMapping不起作用

时间:2012-02-16 14:43:58

标签: java spring

我正在尝试创建简单的urlMapping,但它不起作用。它进入构造函数,但不进入preHandle()或postHandle()。这是xml部分:

 <bean id="handlerMapping"
          class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
        <property name="mappings">
            <props>
                 <prop key="/*">loginFilterSpring</prop>
            </props>
        </property>
    </bean>

    <bean id="loginFilterSpring" class="com.spacebattle.filters.LoginFilterSpring"/>

我做错了什么?

UPD:
我创建了控制器,但它的方法handleRequestInternal()从未被调用过。有什么想法吗?

<bean id="handlerMapping"
          class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
        <property name="interceptors">
            <list>
                <ref bean="loginFilterSpring"/>
            </list>
        </property> 
        <property name="mappings">

            <value>
                /*=loginFilterController
            </value> 
        </property>
    </bean>

    <bean id="loginFilterSpring" class="com.spacebattle.filters.LoginFilterSpring"/>

    <bean id="loginFilterController" class="com.spacebattle.filters.LoginFilterController"/>

1 个答案:

答案 0 :(得分:3)

mappings的{​​{1}}属性适用于您的控制器。您似乎正在为其提供SimpleUrlHandlerMapping,它将忽略它。

您应该在HandlerInterceptor属性中指定拦截器,而不是interceptors属性。然后,您需要将适当的控制器放入mappings属性。