找不到@RequestMapping servlet

时间:2012-05-16 08:13:50

标签: spring http-status-code-404 spring-3 jetspeed2

我有一个如此定义的控制器注释:

@RequestMapping(value = "/myServlet" , method = RequestMethod.GET)
      public @ResponseBody String performAction() {
        return "success";
      }

通过ajax请求调用此servlet。 但由于某种原因,此请求未映射。当我尝试通过URL直接导航到servlet时,找不到它。没有错误被抛出。我只想找到一些关于如何找出问题的指针?

4 个答案:

答案 0 :(得分:0)

您是否将控制器添加到dispatcher-servlet.xml(或者您使用的任何名称)?

至少,对于每个控制器,你应该有类似

的东西
<bean name="contollerName"  class="package.ControllerName"/>

答案 1 :(得分:0)

您是否已将注释 @Controller 置于您已将此方法用于RequestMapping的控制器类之上?

如果是,那么请确保您不要忘记在xml中扫描您的控制器包。

您的问题有很多猜测。请为其他人提供更多代码以便更好地理解问题。

希望这会对你有所帮助。

干杯。

答案 2 :(得分:0)

如果您正在使用注释,则应指定spring应扫描的包

<context:component-scan base-package="your package" />

答案 3 :(得分:0)

如果您使用的是@configuration,请务必扫描控制器所在的软件包:

@Configuration @ComponentScan(basePackages =“org.xxxx.web”)