spring mvc @pathvariable不使用url文件扩展名

时间:2014-01-24 10:59:20

标签: java javascript spring spring-mvc

我在调用具有pathvariable

的spring mvc方法时遇到了问题
@RequestMapping(value="/retrieveData/{userId}", method=RequestMethod.POST)
public @ResponseBody
ModelAndView retrieveData(@PathVariable  Long userId , HttpSession session) {

我有web.xml servlet映射,如下所示

<servlet-mapping>
    <servlet-name>spring</servlet-name>
    <url-pattern>*.html</url-pattern>
</servlet-mapping>

在我的jsp中,我有我的javascript

    document.getElementById("form1").action = "retrieveData.html/2";
    document.getElementById("form1").submit();

所以我的问题是,在我的情况下,路径变量将与url文件扩展名一起使用* .html,我最终希望我的servlet能够映射/ retrieveData / {userId}

在提交页面时我收到HTTP Status 400错误。需要帮助

编辑: - 我在我的春天环境中配置了ContentNegotiationManagerFactoryBean

<bean id="contentNegotiationManager"
    class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean">
    <property name="favorPathExtension" value="false" />
    <property name="favorParameter" value="true" />
    <property name="mediaTypes">
        <value>
            json=application/json
            xml=application/xml
        </value>
    </property>
</bean>

0 个答案:

没有答案