2018-06-01 09:40

@jimchow 类似这样的 dependency 有很多,都仅仅是第三方集成 jfinal,而 jfinal 自身只依赖于接口,不会直接依赖于第三方

2018-05-31 22:15

@信阳 做个 MyVelocityRender 扩展一下 VelocityRender,然后覆盖父类的 render() 方法,将 VelocityRender 的所有代码 copy 到这个 render() 方法中

在这个 render 方法中添加一个 try catch,对所有异常做个明确的日志,看看 getTemplate(view) 是在 view 值是什么的时候出现的 null pointer 异常就能清楚地定位了

然后再做个 MyRenderFactory 以便切换到自己 MyVelocityRender:
public MyRenderFactory extends RenderFactory {
public Render getVeloictyRender(String view) {
return new MyVelocityRender(view));
}
}

最后配置一下即可:
public void configConstant(Constants me) {
me.setRenderFactory(new MyRenderFactory());
}

2018-05-31 22:08

injectListBean 可以注入 List Bean 数据,这个功能是 jfinal 所没有的,感谢你的分享

前几天还有人问题这个功能呢,好像是 @山东小木 问的这个需求,看看这个是否满足 @山东小木 需求

2018-05-31 22:05

@潇洒太爷 这个是正解,感谢你的分享,赞

2018-05-31 22:05

jfinal 没有用到 spring 的功能, pom.xml 中有一个 spring 的 dependency , 仅仅是 scope 为 provided,也就是说这个仅用于编译 jfinal 自身,并不会强制用户的项目依赖 spring

对于 spring 的 dependency , 仅仅是让 spring 可以集成使用 jfinal 的 enjoy 引擎,而并不是让 jfinal 使用 Spring 的功能

2018-05-31 22:02

input 表单域中的 name 都是以 main 打头的,所以 getBean(Xtsz_User.class) 要改成:
getBean(Xtsz_User.class, "main")

如果不改 getBean 参数的话,可以改 input 表单域的 name 前缀,例如:
name="xtsz_User"

input 表单域 name 值的规则是 Model 的类名的第一个字母变小写,也就是 Xtsz_User 对应于 xtsz_User

2018-05-31 21:59

方法名错了没被回调而已,onJfinalStartAfter 改成下面的方法名:
public void afterJFinalStart() {
Cache cache = Redis.use();
}

2018-05-31 21:57

@weiyie 目前是在文档中进行了说明:
http://www.jfinal.com/doc/6-10

2018-05-31 21:51

@weiyie 这个在使用 jf.setSourceFactory(new ClassPathSourceFactory()); 这行配置以后确实是一个问题

但如果用户在使用 Spring 时,没有配置 ClassPathSourceFactory 这个东东,那么 setPrefix(...) 这个配置还有别的作用,比较纠结

2018-05-31 21:44

@isAlan 生成 getter、setter 方法后,配置一下 json 转换实现:
me.setJsonFactory(new FastJsonFaction());

在 jfinal 文档频道有关 json 那章有详细的说明

2018-05-31 12:42

生成器在首页的 jfinal demo 中都有,稍微改下配置即可用于你的项目

2018-05-31 12:41

使用 jfinal 的生成器,为 model 生成 getter、setter 方法即可

2018-05-31 12:40

@信阳 NPE 只能老老实实单步调试,找到为 null 的对象,解决掉即可

目测你这个是 VelocityRender 中在 getTemplate 时返回了 null, 从而在调用 null.render() 方法时出错,因为 null 对象是不能调用其 render() 方法的 : null.render()

2018-05-31 12:37

http://www.jfinal.com/feedback/2429

2018-05-31 12:35

提醒,此举对于程序来说并不健壮,启动时的异常被忽略以后,在生产环境下如果配置有错误,可能会有麻烦