文档章节

用JFinal框架自带的main方法运行正常的情况下,用tomcat发布项目出现css样式表引用错误和资源找不到问题。

ni_cu
 ni_cu
发布于 2014/10/12 12:04
字数 608
阅读 980
收藏 0

用JFinal框架写了个demo,引用了bootstrap的css样式表。在eclipse中开发时采用的是利用JFinal框架中自带的一个方法用main方法启动的。上下文链接清晰,但是部署到tomcat上时出现了找不到资源问题和css样式显示不出来的问题。经过分析之后,发现是相对路径的问题。


打开网址localhost:8092/进行测试的时候一切运行正常效果如下图

用main方法实现时

    但是当把部署tomcat上的时候,发现样式引用不了。显示如下图

部署到tomcat时,css样式失效

    输入用户名和密码登录后显示找不到路径。显示如下图

找不到资源

    究其原因是因为部署到tomcat后,根目录发生改变。所以采用main方法测试web网站的朋友,当你部署到tomcat或者是jetty时要注意你的路径是否采用了jfinal提供的上下文路径me.add(new ContextPathHandler("contextPath")。

/**
*采用main方法测试时的代码,以下为代码。
*/

---------------------------------------------------------------------------------------------------------------------------------------

public static void main(String args[])
{
JFinal.start("WebRoot", 8092, "/", 5);
}

---------------------------------------------------------------------------------------------------------------------------------------

<!--这里是css样式引用代码-->

<link href="/css/bootstrap.min.css" rel="stylesheet">

<script src="/js/bootstrap.min.js"></script>

<!--这里是css样式引用代码-->

---------------------------------------------------------------------------------------------------------------------------------------

-/**
*这里为登录时表单的提交路径
*/

<form class="form-horizontal" action="/login" method="post">

----------------------------------------------------------------------------------------------------------------------------------------

/**
*当你部署到tomcat上时,代码应该添加上下文代码,以下为修改后的代码
*/

<!--这里是css样式引用代码-->

<link href="${contextPath}/css/bootstrap.min.css" rel="stylesheet">

<script src="${contextPath}/js/bootstrap.min.js"></script>

<!--这里是css样式引用代码-->

----------------------------------------------------------------------------------------------------------------------------------------

/**
*这里为登录时表单的提交路径*${contextPath}为freemaker的语法。
*/

<form class="formhorizontal"action="${contextPath}/login"method="post">

----------------------------------------------------------------------------------------------------------------------------------------

/**
*在JFinal框架的config配置文件中要在handler中添加一条代码
*/

public void configHandler(Handlers me)
{
me.add(new ContextPathHandler("contextPath"))
};//contextPath为你设置的上下文路径}

----------------------------------------------------------------------------------------------------------------------------------------



将相对路径中添加${contextPath}/后部署在tomcat后,网站就运行正常了

强烈建议在所有用到路径的地方都要加上${contextPath}



© 著作权归作者所有

ni_cu
粉丝 3
博文 18
码字总数 5585
作品 0
杭州
程序员
私信 提问
加载中

评论(4)

ni_cu
ni_cu

引用来自“孙青彪”的评论

引用来自“ni_cu”的评论

引用来自“孙青彪”的评论

不好配置根路径?

这样更方便点,你觉得呢?

这样要加很多,就像在jsp里面用的那样,我觉得jfinal 里面直接用根路径很不错

怎么直接加根路径?
写下带不走的风
写下带不走的风

引用来自“ni_cu”的评论

引用来自“孙青彪”的评论

不好配置根路径?

这样更方便点,你觉得呢?

这样要加很多,就像在jsp里面用的那样,我觉得jfinal 里面直接用根路径很不错
ni_cu
ni_cu

引用来自“孙青彪”的评论

不好配置根路径?

这样更方便点,你觉得呢?
写下带不走的风
写下带不走的风
不好配置根路径?
关于Jfinal中ContextPathHandler的作用

关于DEMO怎么?嗯 置于这个问题么,你有三种方式,第一,你来OSC上找,第二,搜索Jfinal群,不过这两个方式指向同一个位置,JFinal的官方站点。上面有各种版本的源码,因为开源,所以你能够改...

天蓬小猪
2014/05/23
0
2
jfinal web项目发布到tomcat报错

如题,使用JFinal开发的web项目,在本地IDEA环境运行正常,发布到tomcat中报上述错误,调用Model.findFirst()方法抛的异常,(3.2版本)debug进入 DbKit.getConfig()方法中发现modelToConfig为...

devotion
2018/03/13
406
4
两个不同的JFinal项目,同一浏览器打开,session会受影响。

@JFinal 波总你好,想跟你请教个问题: 我们分别在两个tomcat(端口不同)下,部署了不同的jfinal应用,tomact1部署项目p1,tomcat2部署项目p2。当我在同一个浏览器里面打开p1和p2时,后打开的...

blus
2017/09/29
355
8
最近在做的一件事件编写JFinal教程《Jfinal极速开发实战》

从8月1号开始,整整一个月,初稿完成,朋友帮我第一次文字校对完成,现在正在根据波总的意见修改一些jfinal的设计原则说明 Jfinal、JfinalUIB学习交流QQ群:309647612 已经完成,前四章免费阅...

littleant
2015/08/20
0
12
jboot 1.0-alpha2 发布,一个类似 springboot 的框架

jboot是一个基于jfinal、undertow开发的一个类似springboot的开源框架, 我们已经在正式的商业上线项目中使用。 jboot-1.0-alpha2更新如下: 修复:jbootrpcService 无法在类上进行注解的bug...

理工男海哥
2017/06/12
1K
12

没有更多内容

加载失败,请刷新页面

加载更多

使用阿里云镜像安装kubernetes

参考阿里云镜像 https://opsx.alibaba.com/mirror?lang=zh-CN 系统: CentOS / RHEL / Fedora cat <<EOF > /etc/yum.repos.d/kubernetes.repo[kubernetes]name=Kubernetesbaseurl=https......

北漂的我
25分钟前
1
0
【HAVENT原创】前端使用 jsrsasign 进行 RSA 加密、解密、签名、验签

最近因项目需求,需要配合 JAVA 后端返回的签名,在 H5 网页中做验签功能。网上搜了一下发现了 jsrsasign 满足需求,所以顺便研究了一下 jsrsasign 。 首先去官网下载压缩包,解压后只需要引...

HAVENT
30分钟前
1
0
SpringMVC常见面试题总结【概念】

什么是Spring MVC?介绍你对SpringMVC的理解。 springmvc是一个基于java实现了mvc设计模式的轻量级web框架,通过把model,view,controller分离,将web层进行解耦,把复杂的web应用分成几部分...

薛小二
36分钟前
1
0
ucos 中断,调度,互斥 分析

实际场景: 首先有个标志位 pps_flag,是一个全局变量。有两个地方会用到这个变量,一个是pps信号触发的外部中断,一个是ucos的任务。当pps信号触发外部中断的时候pps_flag被置为2,当任务里面...

青春无极限
50分钟前
2
0
spark streaming、flink和storm区别浅析

1. 介绍 这三个计算框架常常被拿来比较。从我的角度来看,三者的比较可以分为两类(mini-batches vs. streaming)。spark streaming属于微批量的伪流式准实时计算框架(spark本身属于批处理框架...

xiaomin0322
58分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部