社区
Web 开发
帖子详情
getRequestDispatcher地址问题!!在线!!!急用!!!
fyumin
2008-07-11 03:06:09
我有两个目录 image /图片
page /jsp页面
我在Servelt里用到
request.getRequestDispatcher("/page/regedit.jsp").forward(request,response);
但我regedit.jsp里面的图片的路径全丢了!!!
对此小弟十分郁闷,特请高手指点。
在线等待答复。速回!!!
...全文
465
14
打赏
收藏
getRequestDispatcher地址问题!!在线!!!急用!!!
我有两个目录 image /图片 page /jsp页面 我在Servelt里用到 request.getRequestDispatcher("/page/regedit.jsp").forward(request,response); 但我regedit.jsp里面的图片的路径全丢了!!! 对此小弟十分郁闷,特请高手指点。 在线等待答复。速回!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fengzi_shen
2008-11-25
打赏
举报
回复
[Quote=引用 12 楼 zhengbr 的回复:]
因为你在显示图片的页面的图片路径是针对你现在这个页面的,你提交后是转发,而不是重定向,所以就请求不到你的图片,也许我说的不太清楚,但意思就是转发过来后可能会找不到你的图片,因为在地址栏上的路径不是你网页的路径,而是
action的路径.
[/Quote]
原来是这样啊!说的非常好,我理解了
那我们应该怎么解决呢?
hemaily
2008-07-12
打赏
举报
回复
[Quote=引用 11 楼 heliangtai 的回复:]
我认为解决的办法是:将项目跑起来,在图片显示的地方看属性,看看这儿的图片道底是处于什么位置。知道位置后处理起来就容易了。jsp路径很烦人的。使用绝对路径可能会好点。本人刚从事java开发,对这个问题不太了解,只是给出自己的看法。
[/Quote]
B1977
2008-07-12
打赏
举报
回复
因为你在显示图片的页面的图片路径是针对你现在这个页面的,你提交后是转发,而不是重定向,所以就请求不到你的图片,也许我说的不太清楚,但意思就是转发过来后可能会找不到你的图片,因为在地址栏上的路径不是你网页的路径,而是
action的路径.
heliangtai
2008-07-12
打赏
举报
回复
我认为解决的办法是:将项目跑起来,在图片显示的地方看属性,看看这儿的图片道底是处于什么位置。知道位置后处理起来就容易了。jsp路径很烦人的。使用绝对路径可能会好点。本人刚从事java开发,对这个问题不太了解,只是给出自己的看法。
StanleyChi
2008-07-12
打赏
举报
回复
request.getRequestDispatcher("/page/regedit.jsp").forward(request,response);
该称不用request获取委托对象改用
getServletContext().getRequestDispatcher("/page/regedit.jsp").forward(request,response);
这种方法要传入的参数是第二个资源相对于servlet上下文根的路径即从“/”开始的
toraji
2008-07-11
打赏
举报
回复
。。。。。。。。
放在page下的页面需要使用的图片都在pic下,那么html代码应该写img src="../pic/xxx.jpg"
。。。。。。。。。。
应该就是这里的问题
你把所有的"../pic/xxx.jpg",换成“/context/pic/xxx.jpg”
保证没问题
chjx1982
2008-07-11
打赏
举报
回复
肯定是图片路径的问题,你把图片路径写成相对项目路径,比如,你的WebRoot下面有一个文件夹是img放图片的,那图片的路径写成/img/xxx.jpg,就能显示出来了。
fyumin
2008-07-11
打赏
举报
回复
那这样。假如说:
我的web项目目录结构为
/context/page/存放页面
/context/pic/存放图片
放在page下的页面需要使用的图片都在pic下,那么html代码应该写img src="../pic/xxx.jpg"
这样的话,直接打开这个页面是没问题。
可是我用servlet里的request.getRequestDispatcher forward到这个页面,页面上的图片路径就不对了。servlet路径是直接映射为context下的,比如/context/LoginServlet
我看用request.getRequestDispatcher之后那些图片的路径就都变成/context/pic/xxx.jpg了
http://localhost:8080/pic/xxx.jpg了,感觉forward后的页面都以context为相对路径了,于是“..”就到了根目录....
是不是request.getRequestDispatcher的关系?
但是用response.sendRedirect的话就没有这个问题了。
我清楚sendRedirect和forward的区别,但不知道forward后的页面里的元素怎么路径会有这个问题
toraji
2008-07-11
打赏
举报
回复
另外建议引用图片的时候
尽量使用绝对路径
即:
/site/image/...jpg
这样的话是不可能出现问题的
toraji
2008-07-11
打赏
举报
回复
不清楚你的目录结构:
还不行把/去掉
request.getRequestDispatcher("regedit.jsp").forward(request,response);
toraji
2008-07-11
打赏
举报
回复
改成
request.getRequestDispatcher("/regedit.jsp").forward(request,response);
再试一下。
Ant
2008-07-11
打赏
举报
回复
那么你直接访问 "page/regedit.jsp" 页面的时候图片能正常显示么?
建议用在Jsp中可以用<%=request.getContextPath()%>来检查当前的路径是否正确
zhbking
2008-07-11
打赏
举报
回复
这大概是跟你的Servlet的Url-pattern有关.
req.get
RequestDispatcher
路径
问题
添加了 ‘/’ 符号时,表示当前项目下 在JSP中,访问Servlet,其他JSP时不用使用 ‘/’ (当已经在head中指定了项目路径时) <%@ page contentType="text/html;charset=UTF-8" language="java" %> <% String basePath = request.getScheme() + "://" + request.getServerName()
get
RequestDispatcher
和sendRedirect区别及路径
问题
get
RequestDispatcher
是服务器内部跳转,
地址
栏信息不变,只能跳转到web应用内的网页。 sendRedirect是页面重定向,
地址
栏信息改变,可以跳转到任意网页。 1.get
RequestDispatcher
分成两种: a、可以用request调用 b、也可以用getServletContext()调用 不同的是request.getRequestDispatch...
get
RequestDispatcher
()用法介绍
ServletContext.get
RequestDispatcher
(String url)中的url只能使用绝对路径; 而ServletRequest.get
RequestDispatcher
(String url)中的url可以使用相对路径。因为ServletRequest具有相对路径的概念; 而ServletContext对象无次概念。
RequestDispatcher
对象从客户端获取请求request,并把它们传递给服务器上的servlet,html或jsp。它有两个方法: 1.void for
get
RequestDispatcher
与sendRedirect区别
一、get
RequestDispatcher
与sendRedirect简单比较 get
RequestDispatcher
服务器内部资源跳转,不能跨资源,
地址
栏url不变(当前web) sendRedirect页面重定向,
地址
栏url会变动,可以跨资源跳转(任意有效
地址
)二、get
RequestDispatcher
的两种调用方式 1.request.get
RequestDispatcher
(url...
jsp内置对象request——get
RequestDispatcher
的使用
get
RequestDispatcher
Web 开发
81,092
社区成员
341,716
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章