我有个jsp 登陆页面在 比如在 pack1 这个文件夹下
  这时网页的路径是http://localhost:8080/项目名/pack1/login.jsp
  那我的form里的action=“../login.action” ....>对吧
  然后我登陆失败的时候再次登录
  那时网页的路径是http://localhost:8080/项目名/login.jsp
  这时提交的时候就就会成http://localhost:8080/login.action  路径就不对了 

解决方案 »

  1.   

    如果是html的form标签,那么这个标签式相对于ip的
    <form action="xxx">这里的xxx是相对于当前的jsp文件的
    <form action="/xxx">这个xxx是相对于localhost:8080的也就是localhost:8080/xxx
    所以最要用<%=request.getContextPath()%>加以限制如果是struts2的form标签则不同action="xxx"和namespace联合使用,如果namespace是""的话,那么xxx是相对于“项目名”的
    例外:如果是action="xxx.action"此处会出现问题,因为xxx.action会被翻译成相对于当前jsp文件的action你可以查看源代码与html的form标签相比对
      

  2.   

    改成这样试一试:action=“/login.action”>
      

  3.   

    改成这样试一试:<action=“/login.action”....>