2019-02-15 20:51

在本地先测试一下看慢不慢, 上传慢一般是由于网速慢引起的

2019-02-15 18:32

@2834511088 如果多个项目依赖于同一个项目的不同版本,也可能出现多个 jar 包冲突的情况,注意在 pom.xml 中用 exclusion 标记排除掉

在 eclipse 中打开 pom.xml ,并打开底部的 Dependency Hierarchy 视图可以看到这类依赖

打出 war 包后,看 WEB-INF/lib 下面的 jar 包也可以找到这类重复 jar 包

2019-02-15 18:29

简单实用,感谢分享

补充一个只看进程号 PID 的命令:
pgrep -f java
这个命令在 shell 脚本中获取 pid 比较方便

2019-02-15 18:27

engine.renderToString(...) 即可

还可以通过传入 java.io.Writer 参数将数据输出到任意地方:
engine.render(new FileWriter(..., "myFile.txt");

2019-02-15 18:25

@王子鹏 补充上面:首先你做一个 BaseModel 继承 Model,然后在 BaseModel 中覆盖 save() 方法完成功能

最后自己所有的 Model 由继承 Model 改成继承 BaseModel。 改生成器模板是最方便的

2019-02-15 18:24

@王子鹏 将 jfinal 模板文件 copy 出来,然后直接改模板,最后配置使用自己的模板:
generator.setBaseModelTemplate("my-base-model-template.jf");
generator.generate();

在上述的 "my-base-model-template.jf" 模板文件中,将 Model 改成你自己弄的一个 BaseModel 即可,一次性搞定所有,十分方便

2019-02-15 18:19

@2834511088 你当前使用的 jfinal 已经很高了,强烈建议升级到最新版本

此外,要注意问你们公司的人是不是对 jfinal 的源码进行过修改:jfinal-java8-3.3-20171121.152419-1.jar 这个 jar 包看上去是你们改过的源码

如果你们自己改过源码,就不能简单升级,甚至不能使用 jfinal 官方版本

2019-02-15 18:09

如果使用的 jetty-server 作为开发环境,使用 2019.1 这个版本,最新发布的

2019-02-15 18:08

@2834511088 直接使用 jfinal-3.6 ,你的版本已然是 3.3, 升到 3.6 很平滑,多数不需要改代码,这里有详细的升级文档:
https://www.jfinal.com/doc/14-1

2019-02-15 18:00

新出现的问题解决分享,未来碰到该问题的同学能省下不少时间,感谢分享

2019-02-15 17:58

@ClearInterceptor 是很老的版本,应该不涉及到你的项目,因为你的项目都已经是 jfinal 3.x 起步了

基本确定了是多个 jar 包引起的冲突,去掉不要的

2019-02-15 17:57

第二个 jar 包看上去被你们自己改造过,因为版本号并不是 jfinal 官方发布过的,建议使用第二个

删掉对第一个 jar 包的依赖

2019-02-15 17:54

context path 在大部分情况下本来就是空字符串 ""

如果希望不是空串, jfinal undertow 需配置:
undertow.contextPath="这里配置值"

tomcat 下需要配置 server.xml 中的 Host 标记下的 context 子标记下的 path 值

tomcat 下也可以将项目直接扔到 tomcat 的 webapps 目录下面,会自动出一个非空的 context path

以上全是 java web 规范,与 jfinal 无关,jfinal 仅仅只是很机械化地去获取这个值而已

2019-02-15 17:45

@2834511088 这里还有一个关键信息,异常中提到解析注释时出错,而 InterceptorManager 中很可能是解析 @Clear 这个注解出的问题,而老版本的对应注解名叫: @ClearInterceptor

也就是说新版本改过类名,如果你的 class path 下的 jfinal 版本与你项目中实质使用的不同,有可能是这个问题

2019-02-15 17:41

检查出问题运行时的 class path 下有没有多个 jfinal ,例如 tomcat 的 lib 下面有没有 jfinal.jar 之类的