2017-07-26 11:52

提问中的异常信息请勿截图,对搜索引擎不友好,无法形成积累

2017-07-26 11:52

去服务器上看一下现场,看到底文件在不在,尤其注意一下路径与文件名的大小写问题

大小写有问题在 windows 下面可以成功运行,但在 linux 下面却找不到

2017-07-26 11:23

@devil2k 好多年不用 spring,这个 init 被运行两次的问题只能交给你了

2017-07-26 11:21

@linuxea tomcat 有这种坑:https://my.oschina.net/jfinal/blog/353062
一个项目被启动两次

2017-07-26 11:21

@devil2k 你只要保障一下 init 方法只被运行一次,也就是说 ActiveRecordPlugin 只被 new 出来一次就可以了

2017-07-26 11:17

你的项目在某处已经创建了一个 ActiveRecordPlugin 对象,而这个对象会有一个默认的 Config 对象,并且名字叫: "main"

而你的项目又再次创建了 ActiveRecordPlugin 对象,而 Config 对象的名字是不能重复的,在 ActiveRcordPlugin 的构造方法中添加断点,就能很快定位到是哪两处重复创建了这个 ActiveRecordPlugin

2017-07-26 11:06

jfinal 手册第三章第六小节说得很清楚 getFile 文件上传的细节
enctype="multipart/form-data" 这个你确定在 form 表单中配置了?

2017-07-26 11:04

@宅小达 类型不一致的问题,单步调试解决一下,多看看 jfinal weixin 的文档:
http://git.oschina.net/jfinal/jfinal-weixin/wikis/home

2017-07-26 11:03

@Terry丶 异常的 cause 部分都没有,谁能猜得到?

2017-07-26 10:40

@Terry丶 这个是官方群,官方群有十来个,基本上都满员了,管理员会定期清理常期不说话的人

2017-07-26 10:38

做到是很容易的事情,只不过没多少必要,你可以这样:
#render(base + "/include/adminHeader.html")

如果要将对参数中的字符串再做一次表达式求值或者叫渲染,只需要在 render 指令实现的内部用一次:
String finalPara = engine.getTemplateByString(para).renderToString();

实现起来极其简单,但多了一道工序,并且不是每个人都需要,而且用 base + para 也可以实现同样的功能

如果你确实需要,可以自定义指令去扩展

2017-07-26 10:34

升级到 3.1 一个是 config 中要添加一个 configEngin 方法,这个方法可以留空不写任何代码,二个是原来 configConstant 中的 setBaseViewPath 挪到 configRoute 中去配置

详细的升级办法下载首页的 jfinal 手册,在第一章专门讲了升级这个事

2017-07-26 10:32

首先异常信息并没有给出 cause 部分,所以无法精准定位,其次异常信息是截图,不利于搜索引擎收录,后来碰到该问题的小伙伴们搜索不到,无法形成积累

最后你引入的 jar 并不是 cos,所以猜测出异常是找到不 jar 包,common-fileupload 根本不需要,看一下 jfinal 项目的 pom.xml 中有一个 cos 2017 那个 dependecy 就知道了

2017-07-26 10:27

ApiConfigKit.setAccessTokenCache(new RedisAccessTokenCache(...)) 即可打完收工

2017-07-25 23:38

这个是典型的 sql 最外层带有 group by 子句的分页情况,用一下带有 boolean isGroupBySql 的 paginate 方法就可以了:
paginate(int pageNumber, int pageSize, boolean isGroupBySql, String select, String sqlExceptSelect, Object... paras)

其中第三个参数传入 true 即可