最近有个工程,需要把HnSp文件下的index.html作为默认页面(目录结构如下),
我在web.xml中设置<welcome-file>HnSp/index.html</welcome-file>,可是前台index.html
能显示出来,可是页面中的图片都显示不出来(index.html中的图片的路径都是用的相对路
径),后来在发现显示的页面中的图片少了一级,在图片的路径前加入HnSp就能正确显示了
,可是在别的页面通过链接访问index.html页面,图片还是显示不出来,看了知道,多了个
HnSp,看来在图片的路径前加入HnSp是不对的,
我一直想不懂为什么,后来想了个办法解决了,就是在WebRoot下新建一个新的空页面
MyJspjsp,写入如下代码 <%response.sendRedirect("HnSp/index.html"); %>,然后把
<welcome-file>HnSp/index.html</welcome-file>,改为<welcome-
file>MyJsp.jsp</welcome-file>,这样问题就解决了,都不存在路径错误问题了,
response.sendRedirect()
是在用户的浏览器端工作,sendRedirect()可以带参数传递,比如servlet?name=frank传至下
个页面,同时它可以重定向至不同的主机上,sendRedirect()可以重定向有frame.的jsp文件.
重定向后在浏览器地址栏上会出现重定向页面的URL,由于response是jsp页面中的隐含对象
,故在jsp页面中可以用response.sendRedirect()直接实现重定位。