springMVC 访问不到controller,两个controller,一个可以,另一个不行!

下一行code 2016-07-09 11:37:44
第一个Controller:

package com.test.controller
@Controller
@RequestMapping(value="colud")
public class ColudController {
@RequestMapping(value="test“)
public void test(){
System.out.println("colud test");
}
}


第二个Controller

package com.test.controller
@Controller
@RequestMapping(value="base")
public class ColudController {
@RequestMapping(value="test“)
public void test(){
System.out.println("base test");
}
}

扫描包注解配置:

<context:component-scan base-package="com.test"/>

测试的时候,访问地址:http://localhost:8080/ofter/colud/test.mvc
控制台会输出:colud test
访问第二个地址:http://localhost:8080/ofter/base/test.mvc
直接报错:
2016-07-09 11:18:31,269 [http-apr-8080-exec-3] WARN [org.springframework.web.servlet.PageNotFound] - No mapping found for HTTP request with URI [/ofter/base/base/test] in DispatcherServlet with name 'springmvc'

很明显这个地址不对啊,为啥会是/ofter/base/base/test呢,多了一个base
Tomcat启动的时候我看日志输出了,扫描到的路径是对的,怎么访问的时候就多出一个base来
2016-07-09 11:18:04,688 [localhost-startStop-1] INFO [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Mapped "{[/base/test],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public void com.test.controller.BaseController.test()

求大神指点!!
...全文
1113 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
No mapping found for HTTP request with URI 出现这个问题的原因是在web.xml中配置错了,如: <servlet> <servlet-name>springMVCDispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/springMVC-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springMVCDispatcherServlet</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping> 当你在control中返回一个路径的时候,它又把路径(/view/index.jsp)当作一个请求被dispatcherServlet所拦截。所以会抛出异常,解决的办法有两个: 第一即使让dispatcherServlet的拦截加上后缀如:*.do; 这样以jsp后缀的就不会别拦截了。 第二个方法是在spring-servlet.xml中加入: <mvc:default-servlet-handler/> 就解决了此问题。

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧