2019-04-25 12:15

微信端配置 url 为:
/notify/callback?appid=wx5a681e2f84f4cd91

jfinal 这端:
public action(String appid) {
直接使用 appid
}

或者微信端配置 url 为:
/notify/callback/wx5a681e2f84f4cd91

jfinal 这端:
public action() {
String appid = getPara();
}

这都是 jfinal 的基础功能,在文档中都有

2019-04-25 11:21

@xiaoming1234 有某些地方,由于对象的创建并非 jfinal 接管的,所以无法使用 @Inject 注入,此时可以使用 Aop.get(...) 来实现,例如:

public class UserValidator extends BaseValidator {
UserService userService = Aop.get(UserService.class);
...
}

2019-04-25 11:19

@小亮 照样可以用 sql 模板,通过模板你可以获取到:
SqlPara sqlPara = Db.getSqlPara(...);

可以通过 String sql = sqlPara.getSql() 获取到 sql, 还可以通过 Object[] para = sqlPara.getPara() 获取到 para,而查询方法几乎都接受 String sql、Object ... para 这两个参数

此外,还可以单独获取 sql :
String sql = Db.getSql(...);

综上,你可以通过定义两个 #sql("one") #sql("tow") 分别定义两个 sql,然后传给 paginateByFullSql 使用

2019-04-25 11:02

有关分页的各种错误原因,根据文档来解决即可:
https://www.jfinal.com/doc/5-6

2019-04-25 11:01

这个仅仅是某些 url 使用了 http 打头而已,找到那些地方,改成 https

2019-04-25 11:00

@KevinQWW 缺少 fastjson 的 jar 包依赖

2019-04-25 10:59

@Sohnny 这个问题我也会考虑改进,或许可以不顾 null 值的场景

2019-04-25 09:48

@bbq1072 下载本站首页的 jfinal demo for maven,然后在本地跑起来,在 IndexController.index() 中的 render 改成 renderCaptcha() 测试一下行不行

如果不希望导入数据库就能跑起来,可以注掉 configPlugin 中的 ActiveRecordPlugin 有关的代码

2019-04-25 09:47

@shate 具体是怎么解决的? 修改这个贴子,补充一下内容,对社区其他同学会有帮助,谢谢

2019-04-25 09:44

这个地方,最初是为了减少一个 if ( config == null) 判断,属于对于性能极致的强迫症犯了

后来有不少人碰到这个异常,想加上一个 if 判断,进行提示,但已经有人在这么使用了:
Config config = getConfig();
if (config == null)
...

也就是说, null 值的 config 对于有些用户的场景是有意义的,如果现在加上 null 值判断并抛出带有明确提示信息的异常,兼容性会有问题

如果是我自己用早就加上 if 判断并抛出 new IllegalStateException("当前 model 未映射"),进化 8 年的 jfinal 做出任何改变都要考虑很多

2019-04-24 20:06

jfinal 默认路由你试用一下,用起来也是十分方便的

2019-04-24 20:05

很可能是 ControllerBind 的问题,不建议用这个组件

jfinal 默认的路由配置可以支持更多功能,例如 routes 级别的拦截器、baseViewType 等等,这些都是 ControllerBind 不可能支持的

2019-04-24 20:04

只能用 instanceof 来判断

2019-04-24 20:02

可能是你的开发环境有某个 jar 包有冲突,这个问题以前从来没人碰到过,验证码使用起来很方便 renderCaptcha() , 并没有什么别的操作,也不需要引入 maven 依赖