springmvc @RequestMapping拦截不到请求

[复制链接]
查看11 | 回复5 | 2021-1-27 05:07:32 | 显示全部楼层 |阅读模式
我的配置
工程目录:


web.xml




applicationContext.xml


springmvc-config.xml


loginController


login.html这里映射是成功的


运行结果:
访问login.html

点击登录跳转,404,且地址不对少了项目名

手动给地址加上项目名后却能成功


为什么映射地址是错误的


分 -->
回复

使用道具 举报

千问 | 2021-1-27 05:07:32 | 显示全部楼层
一种方式,在前端form增加请求的项目名称
另外一种,在后端去掉请求的项目名称(可以放在tomcat的root下,也可以修改server.xml,多种方式,自己取舍)
你的项目在运行起来后就是带后项目名称的
回复

使用道具 举报

千问 | 2021-1-27 05:07:32 | 显示全部楼层
搞清楚这两个RequestMapping的关系,一般情况下Controller上定义根路径,Action上边定义相对径。
你这里的问题是,两个都用的都是根路径。
所以要把index前边的/去掉。
@RequestMapping("index")


回复

使用道具 举报

千问 | 2021-1-27 05:07:32 | 显示全部楼层
引用2楼icoolno1的回复:搞清楚这两个RequestMapping的关系,一般情况下Controller上定义根路径,Action上边定义相对径。
你这里的问题是,两个都用的都是根路径。
所以要把index前边的/去掉。
@RequestMapping("index")


其实问题出在login.html的action那,不应该在开头加/,这里我试了下加不加/都能访问到
回复

使用道具 举报

千问 | 2021-1-27 05:07:32 | 显示全部楼层
要不你在form的action地址前面加一个${pageContext.request.contextPath}

改成:${pageContext.request.contextPath}/loginController/index
回复

使用道具 举报

千问 | 2021-1-27 05:07:32 | 显示全部楼层

action=“/loginController/index”
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行