2018-02-05 21:37

这个问题在 jfinal 3.4 版本中被很好解决了,直接使用线上最新的 jfinal 3.4 即可,通过如下四步解决:
git clone git@gitee.com:jfinal/jfinal.git
cd jfinal
修改 pom.xml 中的 maven-gpg-plugin 配置的 skip false 为 skip true 值
mvn install
修改你自己的项目对 jfinal 依赖的版本号,改为 3.4-SNAPSHOT 版本

上面四步可以将 jfinal 3.4-SNAPSHOT 这个版本安装到你本地的 maven 库,然后就可以直接使用了

这个版本严格测试过,可以直接使用,后续 jfinal 3.4 正式发布以后,你只需要去掉
3.4-SNAPSHOT 后面的 SNAPSHOT 就可以完成升级了

2018-02-05 21:33

@sqhua Db.batchSave(...) 这个并非 Active Record 模式,所以可以,但 Model.save() 是 Active Record 模式

方法名虽然都有一个 save,但实现的方式、目的不同

2018-02-05 21:31

代码中看不出来是什么样子的代码,原有代码被过滤了

仅依靠 me 这个对象无法实现单例,主要因为 jfinal 不玩 IOC 这一套,所以对于线程安全的对象来说,放一个对象到 me 中,可以避免在使用的时候去 new 出来对象,一是为了节省时空,二是为了书写简洁

2018-02-05 21:28

在官网下载 jfinal demo,看里头的 log4j.properties 文件,如果里头是 DailyRollingFileAppender,参考一下配置

2018-02-05 21:28

可能是你的 log4j 版本不对,我一直用着 DailyRollingFileAppender,非常好用

2018-02-05 21:27

去掉 tomcat-servlet-api 以及 tomcat-servlet-api,改用 jfinal 官方的 jetty-server 即可

2018-02-05 11:48

PathKit.getWebRootPath();

PathKit.getRootClassPath();

2018-02-05 11:16

这个本质上只与 tomcat jetty 这类容器有关, jfinal 没有参与过这件事情

因此,建议找一下 tomcat Jetty 这方面的资料看一看,我自己也从没这么用过,没有这方面经验

2018-02-05 11:13

已备忘到开发列表中,感谢你的反馈

你的建议相对于其他建议,还给了解决方案,非常难得,感谢感谢

2018-02-04 21:49

有上传文件,先调用一次 getFile() 方法即可,文档中有过强调说明:
http://www.jfinal.com/doc/3-7

2018-02-04 14:04

@陈伟 客户端请求到一半时断开请求引发的,也可能是你的机器装了 nginx 这类反向代理的配置造成的,一般不影响使用

2018-02-04 11:33

你在碰到这个异常时项目的使用是否正常?

ClientAbortException 是客户端中途断开请求,通常是不需要理会的,jfinal 3.4 已经添加了额外的处理代码

2018-02-03 18:07

涉及到 sql 拼接,建议用 sql 管理功能实现,极其方便:
http://www.jfinal.com/doc/5-13

查不出来数据的原因很可能是你参数不正确,通过 String.split(",") 得到的参数全部是 String 类型,相信你总有参数并不是 String

所以,参数可以用 ArrayList 存放,然后再 ArrayList.toArray() 转成数组即可

2018-02-03 15:51

@arse7rainman 由于要照顾 java 6 java 7 的用户,所以 JFinal.start(...) 所使用的 jetty 版本仍然是 jetty 8,而 websocket 需要 jetty 9 的支持

你也可以自己在 jfinal 中直接使用 jetty 9 来支持 websocket,参考这里:
http://www.jfinal.com/share/405
https://my.oschina.net/myaniu/blog/470050

这些参考资料在本质上与使用 jetty 8 是一样的,改点 import package 的名字差不多就完成了从 jetty 8 升级到 jetty 9

2018-02-03 15:47

@zhongshg 当拿不定主意的时候,用你已经掌握的 Java 方面规则搞定就可以了

jfinal enjoy 保留了绝大部分 Java 规则,扩展部分极少极少,而且都是有利于开发体验的符合直觉的扩展,例如对 map 的迭代方面的扩展,可以省去你写 map.entrySet() 的代码