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

首先熟悉一下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的项目前缀,其他都没有获取到,现在还在纳闷。这个问题也有点奇怪

时间: 2024-10-08 09:48:03

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

Windows下 wamp+tomcat 环境整合

Windows下实现wamp和tomcat环境整合 使用的软件包: jdk-7u15-windows-x64.exe apache-tomcat-7.0.6 Wampserver2.4-x64.exe tomcat-connectors-1.2.40-windows-x86_64-httpd-2.4.x.zip winserver 2008  企业版 64位 注:这个tomcat-connectors是一个压缩包,解压后有一个mod_jk.so的模块,可以理解为是apache的一个扩展模块,作用

Ubuntu 下开发 Android 环境变量设置

-----------------------------------------------------ANDROID_SDK_HOME:/home/cmm/avds PATH:/home/cmm/android-sdk-linux/tools;/home/cmm/android-sdk-linux/platform-tools CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib ---------------------------------------

[转载]Ubuntu 下开发 Android 环境变量设置

-----------------------------------------------------ANDROID_SDK_HOME:/home/cmm/avds PATH:/home/cmm/android-sdk-linux/tools;/home/cmm/android-sdk-linux/platform-tools CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib ---------------------------------------

java:jdk环境变量配置+tomcat环境变量配置

一:JDK1.先安装jdk  查看jdk版本:   DOC下输入java -version2.配置环境变量(添加系统变量)  JAVA_HOME      D:\study\jdk-6\jdk-6(jdk的安装路径)  CLASSPATH      .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(注意前面有点.)  Path(原来就有的,没有就新建) %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;3.测试 在DOC

linux下java,tomcat环境搭建

1.下载jdk 2.解压并配置环境变量 export JAVA_HOME=/usr/Java/jdk1.8 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 3.测试jdk是否安装成功 1.下载tomcat 2.解压 过程中可能存在文件权限不足的情况 使用 chmod u+{r,w,x} (文件名/文件夹) 为用户添加新权限

PHP - CentOS下开发运行环境搭建(Apache+PHP+MySQL+FTP)

本文介绍如何在 Linux下搭建一个 PHP 环境.其中 Linux 系统使用是 CentOS 7.3,部署在阿里云服务器上. 1,连接登录服务器 拿到服务器的 ip.初始密码以后.我们先通过远程连接工具 putty 连接服务器主机. 2,安装Apache (1)执行如下命令进行安装 1 yum -y install httpd (2)开启 apache 服务 1 systemctl start httpd.service (3)设置 apache 服务开机启动 1 systemctl enab

Ubuntu下安装Tomcat

0. 安装文件 http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.28/bin/apache-tomcat-6.0.28.tar.gz 1. 下载安装文件 under /usr/local/ wget http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.28/bin/apache-tomcat-6.0.28.tar.gz 2. 解压安装包 tar -zxvf apache-tomcat-6.

面面观 | docker下开发,修改环境变量启动jetty

01 本地测试docker程序 遇到问题:Docker程序使用系统的环境变量启动的. 新智云官网www.enncloud.cn 在服务器运行的时候是可以的,但是在本地启动的时候就补行了. 因为本地没有配置环境变量. 一种办法直接设置系统的环境变量,但是切换起来比较麻烦. 于是研究下jetty还是有参数可以进行配置的. http://stackoverflow.com/questions/3231797/specify-system-property-to-maven-project 不影响使用

LInux环境下Eclipse + Tomcat + MySQL 配置J2EE开发环境的方法

上一篇博文里总结了面向对象三大特性在Java中的体现,现在谈一谈Java中的抽象类,接口,内部类等特性. 一. 抽象类 public abstract class Shape { public int shapeID = 0; public abstract double getArea(); } Java中允许类.接口或成员方法具有抽象属性,而不允许成员域或构造方法具有抽象属性. 类修饰词中含有abstract的类具有抽象属性,称为抽象类:接口总是具有抽象属性. 如果成员方法的修饰词中含有ab