springmvc-maven配置spring-mvc请求到不了controller

问题描述

maven配置spring-mvc请求到不了controller
最近自己想用maven搭建spring-mvc项目,按照结构搭建的最后请求到不了

 controller2015-06-17 17:29:30 [org.springframework.web.servlet.DispatcherServlet]-[DEBUG] Bound request context to thread: org.apache.catalina.connector.RequestFacade@1e70f682015-06-17 17:29:30 [org.springframework.web.servlet.DispatcherServlet]-[DEBUG] DispatcherServlet with name 'spring' processing GET request for [/MavenDemo/index.do]2015-06-17 17:29:30 [org.springframework.web.servlet.DispatcherServlet]-[DEBUG] Testing handler map [org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping@7d554f59] in DispatcherServlet with name 'spring'2015-06-17 17:29:30 [org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping]-[DEBUG] No handler mapping found for [/index.do]2015-06-17 17:29:30 [org.springframework.web.servlet.DispatcherServlet]-[DEBUG] Testing handler map [org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping@2c0ea67] in DispatcherServlet with name 'spring'2015-06-17 17:29:30 [org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping]-[DEBUG] No handler mapping found for [/index.do]

下面是配置:

web.xml

  <context-param>        <param-name>contextConfigLocation</param-name>        <param-value>classpath:conf/spring.xml;        </param-value>    </context-param>    <!-- 设计路径变量值 -->    <context-param>        <param-name>webAppRootKey</param-name>        <param-value>springmvc.root</param-value>    </context-param>    <!-- Spring字符集过滤器 -->    <filter>        <filter-name>SpringEncodingFilter</filter-name>        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>        <init-param>            <param-name>encoding</param-name>            <param-value>UTF-8</param-value>        </init-param>        <init-param>            <param-name>forceEncoding</param-name>            <param-value>true</param-value>        </init-param>    </filter>    <filter-mapping>        <filter-name>SpringEncodingFilter</filter-name>        <url-pattern>/*</url-pattern>    </filter-mapping>    <!-- 日志记录 -->    <context-param>        <!-- 日志配置文件路径 -->        <param-name>log4jConfigLocation</param-name>        <param-value>classpath:conf/log4j.properties</param-value>    </context-param>    <context-param>        <!-- 日志页面的刷新间隔 -->        <param-name>log4jRefreshInterval</param-name>        <param-value>6000</param-value>    </context-param>    <listener>        <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>    </listener>    <listener>        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>    </listener>    <!-- springMVC核心配置 -->    <servlet>        <servlet-name>spring</servlet-name>        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>        <init-param>            <param-name>contextConfigLocation</param-name>            <param-value>classpath:conf/spring-mvc.xml</param-value>        </init-param>        <load-on-startup>2</load-on-startup>    </servlet>    <servlet-mapping>        <servlet-name>spring</servlet-name>        <url-pattern>*.do</url-pattern>    </servlet-mapping>    <welcome-file-list>        <welcome-file>index.jsp</welcome-file>    </welcome-file-list>

spring-mvc.xml

 <context:component-scan base-package=""com.tarena""/>    <mvc:annotation-driven/>   <bean id=""jacksonMessageConverter"" class=""org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"">            <property name=""supportedMediaTypes"">            <list>                <value>text/html;charset=UTF-8</value>            </list>        </property>    </bean>   <!-- 对模型视图添加前后缀 -->     <bean id=""viewResolver"" class=""org.springframework.web.servlet.view.InternalResourceViewResolver""      p:prefix=""/WEB-INF/jsp/"" p:suffix="".jsp""/>

UserController.java

 package com.tarena.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;@Controller@RequestMapping(""/"")public class UserController {    @RequestMapping(""index"")    public String index(){        return ""index"";    }}

tomcat启动起来之后访问http://localhost:8080/MavenDemo可以正常跳转到欢迎页面,但是http://localhost:8080/MavenDemo/index.do就不能跳转到对应页面了。

解决方案

@Controller
@RequestMapping(""/index"")
public class UserController {
@RequestMapping(""index"")
public String index(){
return ""index"";
}
}

这样写访问url是:http://localhost:8080/MavenDemo/index.do?index
你这样将action命名访问路径为“/”,那你怎么去区分不同的action 所有建议不要那样写。

解决方案二:
没有配置index.do的View与Action的映射关系

解决方案三:
你拦截的是@RequestMapping(""index""),注意看清楚了http://localhost:8080/MavenDemo/index估计才可以

解决方案四:
mappimg注解改成inde.do

时间: 2025-01-21 03:06:23

springmvc-maven配置spring-mvc请求到不了controller的相关文章

Eclipse使用maven搭建spring mvc图文教程_java

本文为大家介绍了Eclipse使用maven搭建spring mvc的详细步骤,供大家参考,具体内容如下 1. 环境配置 a). Java 1.7 b). Eclipse luna c). Maven3.2.5 d). Spring 4.1.4 2. 创建maven工程 a). 打开eclipse,file->new->project->Maven->Maven Project b). 下一步 c). 选择创建的工程为webapp,下一步 d). 填写项目的group id和art

使用maven进行 spring mvc项目管理时出错

问题描述 使用maven进行 spring mvc项目管理时出错 初学maven和spring,昨天跟着教程自己搭建了一个javaweb,然后配置了spring和maven,在pom.xml进行spring依赖的时候,发现myeclipse报了很多错误刚开始是以为没有对spring进行配置的缘故,后来在对spirng进行配置之后刷新工程错误依然存在. log4jlog4j1.2.17compile junitjunit3.8.1test org.springframeworkspring-con

spring mvc-java maven+mybatis +spring MVC 项目添加问题

问题描述 java maven+mybatis +spring MVC 项目添加问题 最近做这个项目,新手111 解决方案 项目左上角有个红叉,说明工程配置有问题,有可能是你eclipse默认配置的JDK的版本和别人的不一样.或者是web项目版本问题 解决方案二: Maven+Spring+Spring MVC+Mybatis项目实战 解决方案三: 什么问题啊?没看出来要问什么问题 解决方案四: 仔细看看红叉是什么问题,是环境问题,还是js文件扫描不通过 解决方案五: 你这么问问题也是醉了 解决

spring mvc注解不能访问到controller

问题描述 spring mvc注解不能访问到controller web.xml配置 <servlet> <servlet-name>annomvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLoca

Spring MVC @RequestMapping Annotation Example with Controller, Methods, Headers, Params, @RequestPar

Spring MVC @RequestMapping Annotation Example with Controller, Methods, Headers, Params, @RequestParam, @PathVariable Pankaj July 4, 2014 Spring @RequestMapping is one of the most widely used Spring MVC annotation.org.springframework.web.bind.annotat

配置-Spring mvc做登录拦截,诡异的报404,tomcat日志没有任何输出

问题描述 Spring mvc做登录拦截,诡异的报404,tomcat日志没有任何输出 先看出错提示TOMCAT没有日志输出,直接在浏览器报的404拦截器类方法: public boolean preHandle(HttpServletRequest request HttpServletResponse response Object handler) throws Exception { LoginAccount user=(LoginAccount) request.getSession(

maven intellij-mybatis+spring mvc整合出的错误!

问题描述 mybatis+spring mvc整合出的错误! 10C 在myeclipse中的配置文件转到intellij用maven创建web项目就出现下面的异常.UserMapper.xml中的方法和UserMapper.java中的一样.改用原生JDBC连接没问题,就是不知道是什么错,请大神帮忙解答.在myeclipse中都没问题的,改maven就不行了,纳闷了. type Exception report message Request processing failed; nested

配置-spring mvc中把jsp放在web-inf报404错

问题描述 spring mvc中把jsp放在web-inf报404错 已经配置号xml文件 解决方案 p:prefix="/WEB-INTF/JSP/" : 配置的是前缀,所以这个目录下面不用加这一段路径了. p:suffix=".jsp":配置的是后缀,返回JSP页面的时候也不需要加后缀了. 详细请了解p:prefix,p:suffix的用法,**如还有问题请用HttpWatch调试,可以看到请求的路径** 解决方案二: 1 单独从配置文件来看..你的JSP文件应

log4j 配置spring MVC的异常信息输出到文件

问题描述 各位大神,当前项目前端采用的是springMVC,数据库操作使用的是ibatis,日志使用的是log4j.我在所有的controller将异常进行捕获,输出错误信息到文件或者控制台,但是springMVC或者是后台的ibatis框架抛出的异常,捕获不到,不能输出到日志文件.我的需求很简单,怎么配置log4j文件,使框架抛出的异常输出到日志文件.当前log4j配置如下:#Outputpattern:date[thread]prioritycategory-message#log4j.ro

配置Spring mvc 注解配置的时候 静态页面跳转 报的错

问题描述 <mvc:default-servlet-handler /> 相应的包 都加了, 就是报错, org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 16 in XML document from ServletContext resource [/WEB-INF/dispatcher-servlet.xml] is invalid; nested exception is org.xm