请求Spring的映射问题

时间:2012-08-08 18:51:54

标签: java spring spring-mvc request-mapping

所以我正在按照我发现的指南Spring Bean的指南:http://richardchesterwood.blogspot.com/2011/03/using-sessions-in-spring-mvc-including.html

我正在使用第3个选项,这意味着我的组件在会话范围内,我的控制器根据请求确定范围,组件自动连接到控制器(因此每个会话只有一个实例)。

但是当我这样做时,我得到了日食错误:

  

无法将处理程序'somethingsController'映射到URL路径   [/ SomethingsPage]:已有处理程序   'scopedTarget.somethingsController'已映射。

在我的控制器中,我有一个这样的方法:

@RequestMapping(value = "SomethingsPage")
    public ModelAndView changeTheSomething(HttpServletRequest request) {
        [...]
    }

如果我评论出这种方法,一切都很好。 (除了那个方法。)因此出于某种原因在控制器内使用请求映射会导致某些事情中断。有没有什么方法可以改变我的请求映射,使其全部工作?

所以我认为这个问题与我的spring xml扫描两次的控制器有关,导致第二次映射@Requestmapping会引发错误。考虑到我如何在范围界定和自动装配方面使用我的类注释,我的xml文件的设置方式是否有问题?

<?xml version="1.0" encoding="windows-1252"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xsi:schemaLocation="
       http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context-3.0.xsd
       http://www.springframework.org/schema/mvc
       http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
       http://www.springframework.org/schema/aop
       http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
       http://www.springframework.org/schema/tx
       http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">

    <!-- Use @Component annotations for bean definitions -->
    <context:component-scan base-package="controllers, daos, map, models, session, testControllers"  scoped-proxy="targetClass" />
    <!-- added this because I think it makes annotations work? -->
    <context:annotation-config />

    <!-- Use @Controller annotations for MVC controller definitions -->
    <mvc:annotation-driven />

    [... bunch of other stuff that shouldn't be relevant]

0 个答案:

没有答案