日期:2014-05-16  浏览次数:20299 次

服务器转发到页面后js路径 问题

  现象:在一个页面引用了一个js文件,如果直接访问这个页面,js能够被正常引用,但是如果从服务器servlet通过requestgetRequestDispatcher().forward()跳转到该页面的话,该js会出现路径错误,不能正常应用。(js所在路径为/book/下)
  分析:应该是requestgetRequestDispatcher().forward(),使得页面所处的服务器下路径出现问题,分析得出当引用或者说进入一个servlet时,这是js路径为所在服务器中当前工程名下当前使用servlet路径(WebBookShop/servlet/SVAddBook),而非原来直接访问时的工程名下所在包的的路径(WebBookShop/book/)(这里的WebBookShop 是我的项目名 book是他下面一子目录)。

  解决:为了得到js真正路径,只需要将当前路径回退后加入真正路径即可 方法为../book/其中..表示回退连个子目录.....
下面是我项目目录截图




嘿嘿 说得不清楚,但比较开心,这个问题困扰了我好久,看来什么事都得多想。。。。仔细的去分析