strut2 学习笔记 -- form表单每次请求时数据非法时,浏览器的URL都会发生变化

问题
   form表单请求采用strut2.3框架
   一个表单请求前URL是: http://127.0.0.1:8999/IHWSM/newbie/activation.do,如果输入的表单数据错误,后台会将页面转到输入页面并输出错误信息,如果输入正确,则转到下一页。现在的问题是每次输入错误,转到输入页时,浏览器的URL都会发生变化:
   第一次时URL变成:http://127.0.0.1:8999/IHWSM/newbie/newbie/activation.do
   第二次时URL变成:http://127.0.0.1:8999/IHWSM/newbie/newbie/newbie/activation.do
   第三次时URL变成:http://127.0.0.1:8999/IHWSM/newbie/newbie/newbie/newbie/activation.do
   以此类推,每次URL都会增加一级newbie目录
原因:
   经过检查,此页面中提交的From表单请求action的值使用了相对路径:newbie/activation.do。
如果采用相对路径,第一次请求前系统会认为自己的路径是相对于http://127.0.0.1:8999/IHWSM/newbie,会将“newbie/activation.do”,加到此URL的末极后面,请求的URL就是http://127.0.0.1:8999/IHWSM/newbie/newbie/activation.do。第二次请求前浏览器url变成http://127.0.0.1:8999/IHWSM/newbie/newbie/activation.do,此时系统认为相对于http://127.0.0.1:8999/IHWSM/newbie/newbie,则请求的URL变成了http://127.0.0.1:8999/IHWSM/newbie/newbie/newbie/activation.do以此类推,就出现以上的情况。
解决方法
   解决方法很简单,只需要将from的请求action改为绝对路径就可:${pageContext.request.contextPath}/newbie/activation.do。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值