2 taddy4944 taddy4944 于 2013.06.16 20:34 提问

spring mvc注解不能访问到controller

web.xml配置

<servlet>  
<servlet-name>annomvc</servlet-name>  
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>   
<init-param>    
<param-name>contextConfigLocation</param-name>    
<param-value>/WEB-INF/annomvc-servlet.xml</param-value>   
</init-param>   
<load-on-startup>2</load-on-startup> 
</servlet> 
<servlet-mapping>   
<servlet-name>annomvc</servlet-name>   
<url-pattern>*.do</url-pattern> 
</servlet-mapping>

annomvc-servlet.xml配置

<context:annotation-config />    
    <!-- 把标记了@Controller注解的类转换为bean -->            
    <context:component-scan base-package="com.svs.master.controller" />

   <!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 -->    
  <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />     

   <!-- 对模型视图名称的解析,即在模型视图名称添加前后缀 -->     
   <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"     
      p:prefix="/csy/page/" p:suffix=".htm" />
   <bean id="multipartResolver"     
      class="org.springframework.web.multipart.commons.CommonsMultipartResolver"     
      p:defaultEncoding="utf-8" />

controller类

    @Controller@RequestMapping(value = "/userlogin.do")
   public class UserLoginController  {    
   @RequestMapping(params="method=login", method = RequestMethod.POST)    
public String userLogin(HttpServletRequest request,   HttpServletResponse response) throws Exception {    //...方法内容    }}

页面请求

<form method="post" action="userlogin.do?method=login" >

后台错误

20:45:52,098 DEBUG DispatcherServlet:693 - DispatcherServlet with name 'annomvc' processing POST request for [/test/csy/page/userlogin.do]
20:45:52,098  WARN PageNotFound:947 - No mapping found for HTTP request with URI [/test/csy/page/userlogin.do] in DispatcherServlet with name 'annomvc'
20:45:52,098 DEBUG DispatcherServlet:674 - Successfully completed request

38个回答

wodetongnian
wodetongnian   2014.11.25 00:03
已采纳

请问下,你的页面有问题吗?

shiweihang
shiweihang   2014.11.18 22:46

form中的action 最好写绝对路径 这样写是相对当前路径 将method改为get 看看请求的地址有没有问题

后台的报错中提示 /test/csy/page/userlogin.do 正确的的uri应该是 /项目名/userlogin.do

u011731233
u011731233   2014.11.19 13:02

struts.xml里有没有定义好

nohero1
nohero1   2014.12.12 16:27

我很好奇你的访问路径 为什么会带 csy/page/ 不是应该 test/userlogin.do的吗?

xaoyaoyaomm
xaoyaoyaomm   2015.01.04 11:51

@Controller 写法有问题~

qq_28878909
qq_28878909   2015.10.12 17:34

把方法名上面的mapping .do去掉,然后请求路径加上.do

u013672953
u013672953   2014.11.18 09:34

把URL 改成classpath:springmvc.xml看看

WangJing_Java
WangJing_Java   2014.11.19 08:45

1、首先你的访问路径应该改成绝对路径,这样会很规范,而且不容易出错。
2、/WEB-INF/annomvc-servlet.xml

如果你的配置文件在/WEB-INF下,是可以不配置的,如果在/src下,你可以配置为:
classpath:annomvc-servlet.xml

ding43930053
ding43930053   2014.12.08 19:57


mz848083987
mz848083987   2014.12.29 16:38
@Controller@RequestMapping(value = "/userlogin.do")

    这里不用加   .do吧

public class UserLoginController {

@RequestMapping(params="method=login", method = RequestMethod.POST)

public String userLogin(HttpServletRequest request, HttpServletResponse response) throws Exception { //...方法内容 }}

共38条数据 1 3 4 尾页
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
SpringMVC 无法访问到controller的可能原因
@RequestMapping(value="/toplayindex",method={RequestMethod.POST,RequestMethod.GET}) public ModelAndView toKpointPlay(HttpServletRequest request,@RequestParam("Id") int Id){ //代码块 } @PathVariab
Spring MVC访问不到静态资源
运行Spring MVC项目,发现.css,js等文件加载不了,一般是spring MVC的拦截匹配导致的。 可通过配置spring MVC指出静态资源的位置
SpringMVC整合,出现注解注解没有起作用
在spring的applicationContext.xml中配置问题正确的配置:<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
spring MVC Controller 实现接口后,不能解析@Controller注解问题
今天给自己的一controller加了一个接口 A Interface,启动tomcat 后,console 并没有输出   Request Mapping  Url ,也就是 spring 没有扫描到该Controller, 经过一翻debug后发现, AbstractHandlerMethodMapping 这类的145行 isHandler(getApplicationContext
我在编写SpringMVC的Controller时遇到的注解继承问题
在SpringMVC中应该如何将Controller父类的方法添加进入用户访问路径中,目前尚在学习中......
SpringMVC访问不到js、css、image
感谢分享:http://blog.csdn.net/figo645/article/details/50403872 这个可以说是很多初学Springmvc的人都会碰到一个令人头痛的问题 那就是为什么我配置好web.xml中的dispatchservlet后,js,css,甚至gif都不能正常显示了 我们来看看我们配置的web.xml [html] vi
SpringMVC常用注解:@Controller注解的详细使用方法
本文欢迎转载,转载前请联系作者,经允许后方可转载。转载后请注明出处,谢谢! http://blog.csdn.net/colton_null 作者:喝酒不骑马 Colton_Null from CSDN 引言 Spring从2.5版本之后开始引入注解。开发人员可以使用丰富的注解例如@Controller、@RestController、@RequestMapping等。 @Con
SpringMVC自动扫描@Controller注解的bean
SpringMVC自动扫描@Controller注解的bean   若要对@Controller注解标注的bean进行自动扫描,必须将放置在dispatcherservlet的配置文件中,若配置在ContextLoaderListener的配置文件applicationContext.xml中则不起作用 上下文配置文件 --> context-par
SpringMVC给控制器添加自定义注解控制访问权限
1、创建自定义组件package com.qingbo.ginkgo.annotation; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.lang.annotation.Inherited; import java.lang.annotation.Rete
spring mvc常用注解@Component @Controller @Service @Repository
注解用了之后,会在*.xml文件中大大减少配置量。以前我们每个Bean都得到配置文件中配置关联下。spring2.5后,引入了完整的annotation配置注解,使得我们的程序配置更简单更容易维护。  @Component;@Controller;@Service;@Repository        在annotaion配置注解中用@Component来表示一个通用注释用于说明一个类