码迷,mamicode.com
首页 > 其他好文 > 详细

有关Jfinal在jetty环境下开发,tomcat环境下发布造成的问题解决心得。

时间:2015-11-15 06:30:00      阅读:738      评论:0      收藏:0      [点我收藏+]

标签:

首先熟悉一下tomcat的发布配置相关:

技术分享

具体的发布配置步骤:

技术分享


我的项目部署:

配置文件:tomcat../conf/server.xml

<Host  ..

<Context path="" reloadable="false" docBase="E:\www\gmb"/>

</Host>

技术分享

技术分享

技术分享

原本是没有问题的,不过 @jfinal,詹总推荐把tomcat配置的path留空 " ",那么问题来了。很多时候我们前端的action请求

是以项目名称为前缀的,这样就等于少了一层(me.add(new ContextPathHandler("ctx")) 取到的是 " ")。

有人就会说了,path那就不留空 ,根据项目名称来,如 "/gmb",可是问题又来了,前端访问的时候,就变成了:http://localhost:8080/gmb/gmb 才能访问了,不要忘了tomcat下面配置的 docBase 的物理地址。


没错,就是这里的问题,折腾的我大半夜的现在才发这个心得。解决办法呢,就是 在 afterJFinalStart 中进行配置 这个项目前缀到 上下文环境中,JFinal.me().getServletContext().setAttribute("ctx", "/gmb");

技术分享


当然,没使用setAttribute("ctx", "/gmb") 之前,首页中有一处获取到了 ctx的项目前缀,其他都没有获取到,现在还在纳闷。这个问题也有点奇怪



有关Jfinal在jetty环境下开发,tomcat环境下发布造成的问题解决心得。

标签:

原文地址:http://my.oschina.net/matol/blog/530445

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!