2019-11-19 15:04

@快乐的蹦豆子 显然是缺少依赖。缺什么依赖呢?这个问题也不简单吧。

2019-11-19 14:52

@快乐的蹦豆子 你的方法报错:Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Priority

2018-05-27 15:17

补充2:那么,能否不管三七二十一,拦截器对批量操作直接执行语句1、语句2,然后控制器中不就可以用语句3了吗?乍一听,我也心动了,差点就赞同了。可是实践出真知:万万不可!因为还要考虑验证器和其他拦截器的感受!问题举例:我们即使使用post提交数据,url一般还会有一些用“?”挂的参数,这些是要交给验证器去验证的,难道验证器还要判断actionKey的类型是否为“批量操作”进而分类验证,因为验证器已经不能用getPara系列方法轻松获取这些参数了!……细思极恐!

2018-05-27 15:01

补充1:我有考虑过拦截器中String jsonString = HttpKit.readData(controller.getRequest()) (语句1), 然后 controller.setAttr("postData",jsonString) (语句2)。控制器中的updateList方法就可以getAttr("postData")(语句3)获取数据。这似乎没毛病。但还是被放弃了。因为,拦截器中还有一些逻辑判断(如,超管豁免数据验证、特殊action豁免验证等等),导致没有执行 语句1和语句2,于是结果可想而知,语句3获得了null。

2018-05-27 14:48

这种机制很不好!不知道有没有好的解决办法:我也需要在“权限”拦截器中获取post数据,对数据进行权限验证,如:判断用户是否在新增一个数据到他人的名下,判断没问题后,交给控制器处理后续操作。表单提交的话,没事!因为这个拦截器根据actionKey判断不是“批量操作”进而不会调用readData。问题出现在“批量处理”的方法和数据上。我的现在自定义了一个“规范”,前端post数据(目前都是字符串、json型的),都用“postData”关键字指定,如$.ajax({ url:‘/couser/updateList’, data:{'postData':JSON.parse([……],[……], ……) } }) @JFinal

2018-03-14 18:10

已弄懂了,谢谢各位。的确,jfinal用cache代替了常规session。高!实在是高!

2018-03-14 15:11

@杜福忠 入群问了,有人说 jfinal-club没有用session……怎么回事?

2017-10-24 15:58

@abvcb 看了您的思路,您是将renderError( int errorCode, String message) 完全替换掉原来的renderError( int errorCode, String view);这样固然可以返回json格式的,可是这里还有一个隐含要求“自动返回要求的格式”,即自动判断网页是要返回json还是html。因为:这个renderError是全局异常的返回,既有可能是ajax访问也有可能是普通访问。