各位大侠:    我在登陆页面(clientLogin.jsp)有一个注册按钮,他的事件定义为:onclick="javascrip:window.location.href='./form/registerClientRelation.jsp';注册成功后进入到registerSuccess.jsp页面,在registerSuccess.jsp页面定义的返回按钮事件为:window.location.href='./form/clientLogin.jsp'   其中clientLogin.jsp和registerClientRelation.jsp,registerSuccess.jsp都是在WebRoot/form/文件夹下。现在出现的问题是: 我重启tomcat然后在浏览器中输入:http://localhost:8080/EngmpManager/,自动跳转到我的登陆页面,这时候点击注册按钮能正常进入注册页面,但是当注册成功后在成功页面点击返回按钮进入登陆页面,此时浏览器的url为:http://localhost:8080/EngmpManager/form/clientLogin.jsp,这时候再点击注册按钮就会出现http://localhost:8080/EngmpManager/form/form/registerClientRelation.jsp找不到的错误。我这几个页面出了什么问题了?小弟实在搞不懂了。另外:这个路径的配置和jsp页面上面的<base href="<%=basePath%>">之间有什么联系呢?

解决方案 »

  1.   

    把所有的 ./form 都去掉,都使用相对路径。
      

  2.   

    不行啊,当我通过action跳转回登陆页面的时候用相对路径就出错了
      

  3.   

    使用basePath获取当前项目路径,再加上你的form/href="<%=basePath%>form/test.jsp"
      

  4.   

    另外也可以修改你得./
    ./是返回上一层得路径也就是得到了form得路径
    再./里直接加入form里面得jsp文件
      

  5.   

    第三种方法 href="/TEST/form/test.jsp"   这里/TEST是我的项目名