2017-08-28 17:43

@tianya 仔细追溯,而不是看表面:
1:点开 eclipse JRE System Library 下方的 Maven Dependencies 左边的加号,看里面的 jfinal 依赖的版本号
2:看是否有多个 jfinal 版本被依赖
3:点开 jfinal.jar ,看里面是不是真的存在报异常的那个 classes 文件,总之就是不要相信直觉,要去现场仔细排查

当然,更厉害的一招是:
1:删除该项目中的所有文件,只保留 src 目录与 pom.xml
2:重新导入项目,导入的时候选择 Existing Maven Project,整个世界清静了

2017-08-28 17:07

eclipse 或者 IDEA 中配置的问题,仔细看一下 jfinal 手册

2017-08-28 17:04

@苦丁香 没错,记得扩展搞定后,回来分享一下,在分享频道:jfinal.com/share

2017-08-28 16:46

@北流家园网 A表不见了,这正是楼主希望的,因为他就想生成指定的 B 与 C

2017-08-28 16:45

@北流家园网 这个扩展为啥还需要 getTemplateByString(...) 这一步呢? 直接 writer.write(content) 不就可以了?

要知道从一个 url 过来的 content 之中如果有恶意代码,在使用模板引擎渲染的时候有危险性,当然这个危险性极小,因为 jfinal 模板引擎默认对很多操作已经做了屏蔽

2017-08-28 16:43

ClassNotFoundException 是最基本的异常,这个不用我多说了吧,在 jfinal 官网我起码就回复过几十个这样的错误了,用一下搜索功能:
http://www.jfinal.com/feedback/1654

2017-08-28 14:16

@ze 记得搞定后回来分享一下,这个问题相当罕见

2017-08-28 14:10

@ze 这个问题很诡异,建议多单步调试找原因,在我们这里都是很好用的,jfinal 的这个功能用了五六年了

2017-08-28 13:55

@ze 你确定 conn.rollback() 这行代码被执行了?

2017-08-28 13:23

@ze 你 new 出来的 ActiveRecordPlugin 对象就是 arp 了,new 出来以后,直接配置一下

2017-08-28 13:22

@eilir2016 最简单的办法就是使用 Model 而不是 record,如果一定要使用 record 转 json 有两个办法:
1:使用 JFinalJson 来转:JFinalJson.getJson().toJson(...),jfinal 默认就是么转的,只需要 JsonKit.toJson(record)
2:如果使用别的 json 工具,例如用的是 fastjson 需要做点扩展,以下是具体办法:
https://my.oschina.net/talenttan/blog/1517514

jfinal 3.3 会添加 fasjon、jackson 对 record 转 json 的扩展,多多关注 jfinal 新版本

2017-08-28 12:09

用 Db.call(...) 方法即可,这里有些例子:
https://my.oschina.net/muduclark/blog/525805
https://www.oschina.net/question/1422291_247186

2017-08-28 11:50

@dear7575 不容易啊,我花的那些回答问题的时间总算没白费

2017-08-28 11:44

用 find 系列的方法,而不要用 query 系的

find 系会将返回值封装成 Record 对明,而 query 系不做任何封装,原样返回

2017-08-28 11:33

首先通过设置断点,单步调试,看代码有没有执行 conn.rollback() 这个方法,如果执行了,只需要确保以下几件事就可以了:
1:mysql 是不是在用 InnoDB 引擎,其它引擎不支持事务
2:事务级别是否足够高,如果是 2 的话,建议调为 4 看一下:arp.setTransactionLevel(4)
3:是不是不细心,上次提交过的已成定局的数据,误认为是本次事务没有回滚