VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 802|回复: 9

JSP页面资源引用问题

[复制链接]

1

主题

4

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
发表于 2020-2-12 23:00:01 | 显示全部楼层 |阅读模式
最近在做一个J2EE项目碰到了个页面资源引用的怪问题:


比如我现有如下资源:
localhost:8080/mydir1/mydir2/1.jsp
localhost:8080/mydir1/mydir2/2.gif
localhost:8080/mydir1/images/3.gif

现在我在1.jsp内引用2.gif和3.gif
<td align="center" background="2.gif">
<td align="center" background="../images/3.gif">

这样应该就可以了

但是在浏览器内访问的时候,我的资源就变成了:
localhost:8080/2.gif
localhost:8080/images/3.gif

现在我知道的唯一的解决方法就是把引用的路径从localhost开始写全:
<td align="center" background="/mydir1/mydir2/2.gif">
<td align="center" background="/mydir1/images/3.gif">

这样很麻烦,而且有些东西没法这样写,比如同一个页面内的跳转
回复

使用道具 举报

0

主题

18

帖子

11.00

积分

新手上路

Rank: 1

积分
11.00
发表于 2020-4-11 15:00:02 | 显示全部楼层
localhost:8080/mydir1/mydir2/1.jsp
图象直接INCLUDE
回复

使用道具 举报

1

主题

4

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
 楼主| 发表于 2020-4-12 12:45:01 | 显示全部楼层
还有其他资源阿,cs,js,等等都有这个问题
就连同一个页面内的跳转也指到localhost下去了阿

如果图片直接include,那同一个页面内的跳转怎么办啊?
回复

使用道具 举报

0

主题

63

帖子

42.00

积分

新手上路

Rank: 1

积分
42.00
发表于 2020-4-12 18:00:01 | 显示全部楼层
>比如同一个页面内的跳转

什么意思 ?

回复

使用道具 举报

0

主题

63

帖子

42.00

积分

新手上路

Rank: 1

积分
42.00
发表于 2020-5-1 15:45:01 | 显示全部楼层
<a name="top"></a>
............................

<a href="#top">TOP</a>

楼主,这种问题不会自己右键看HTML代码阿:
<td height="10" align="right" colspan="4"><font color="#FF6633"><b><a href="#top"><font color="#3366CC">Top</font></a></b></font></td>
回复

使用道具 举报

0

主题

14

帖子

13.00

积分

新手上路

Rank: 1

积分
13.00
发表于 2020-5-3 13:30:01 | 显示全部楼层
建议你用
<td align="center" background="/mydir1/mydir2/2.gif">
<td align="center" background="/mydir1/images/3.gif">
的方式取路径,如果有必要
你可以使用request中的多个方法获取路径,这样可以实现你的要求,但麻烦很多。
回复

使用道具 举报

1

主题

4

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
 楼主| 发表于 2020-5-8 14:30:01 | 显示全部楼层
晕,不好意思哈,论坛老出错,昨天回复了多次,但没看到结果,怎么刷都刷不出来,最后提示“每次连续发帖不得超过3次”,今天却全看到了。

我再写详细点
就像本页面的那个“Top”,点击就可以跳到页面的最上方了
http://community.csdn.net/Expert/TopicView1.asp?id=5274857#top

如果是我的应用的话,在浏览器就变成是:
http://community.csdn.net/#top

全部都当成是从应用根目录了,所以很麻烦。
回复

使用道具 举报

0

主题

63

帖子

42.00

积分

新手上路

Rank: 1

积分
42.00
发表于 2020-5-8 22:00:01 | 显示全部楼层
你看懂了没有
<a name="top">
<a href="#top">
回复

使用道具 举报

0

主题

63

帖子

42.00

积分

新手上路

Rank: 1

积分
42.00
发表于 2020-5-9 00:15:01 | 显示全部楼层
# 是html内部定位
回复

使用道具 举报

1

主题

4

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
 楼主| 发表于 2020-5-11 22:00:01 | 显示全部楼层
谢谢各位了,搞定了
原来是这个原因:
我新建jsp页面的时候,用了默认页面,在head里有个base标记:

<!-- 页面基准URL,在计算相对路径时使用 -->
<base href="<%=basePath%>">

新建页面时,那个basePath就是我的应用路径,所以我引用的所有资源都指向了应用:
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表