JFinal结合freemarker路径问题

Forsend 发布于 2014/05/06 13:28
阅读 1K+
收藏 0

【Gopher China万字分享】华为云的Go语言云原生实战经验!>>>

@JFinal 很谢谢詹总,我在用JFinal写毕业设计。

是这样的,我在HTML页面引入CSS和JS都是这样写的:

在a.html里href="bootstrap/css/bootstrap.css"其中a.html和bootstrap文件夹都在WebRoot下。

本来这样没问题的。但比如我访问了localhost:8080/myProjcet/news/1,这个1没有对应的方法就作为参数访问index方法,index方法会render一个b页面,但这个时候在b页面下的CSS引入会变成

localhost:8080/myProject/news/bootstrap/css/bootstrap.css",我不想每个页面的JS和CSS和href的前面都加上"/myProject/"这样的绝对路径。。请问有什么解决办法吗?

加载中
1
天蓬小猪
天蓬小猪

在你的Config中找到以下的这个方法:

public void configHandler(Handlers me) {

me.add(new ContextPathHandler("contextPath"));//加入这句话说明,这个是设置上下文路径的

}

在你需要引用的地方使用${contextPath}/yourresourcepath

这样基本能够实现动态的方式获取你的资源。

希望能够帮助你!!!

g
gfbnxfgh
很牛逼
Forsend
Forsend
可以了,按照你的方法,在页面head里加上 <base href="${contextPath!}/" /> 就是楼上那位说的,就可以了,其他地方都不需要改变。
Forsend
Forsend
如果我页面引入的js里有ajax代码,这里 url : "doLogin" 这里该怎么办啊?${contextPath}没用吧?
Forsend
Forsend
那我每处引用CSS,JS,包括<a href ="news/1">都要加上的对吧。
0
JAVAVincent
JAVAVincent

可以使用相对路径,但是有些情况下相对路径会加载不到,建议你用绝对路径。

0
魔神翼
魔神翼

页面设置<base href="${baseUrl!}/" />


0
JFinal
JFinal

感谢这位童鞋的支持,觉得好用就介绍JFinal给同学们做毕设啊 

JFinal
JFinal
回复 @hww : 明智 ^_^
已销号
已销号
明年我也用jfinal做毕设。
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部