Jfinal 升级3.0 后,原来使用Enhance的类运行时错误
错误如下
tomcat_1 | Caused by: net.sf.cglib.core.CodeGenerationException: java.lang.IllegalArgumentException-->Protected method: getConfig()Lcom/jfinal/plugin/activerecord/Config;
tomcat_1 | at net.sf.cglib.core.ReflectUtils.newInstance(ReflectUtils.java:235)
tomcat_1 | at net.sf.cglib.core.ReflectUtils.newInstance(ReflectUtils.java:220)
tomcat_1 | at net.sf.cglib.core.ReflectUtils.newInstance(ReflectUtils.java:216)
tomcat_1 | at net.sf.cglib.proxy.Enhancer.createUsingReflection(Enhancer.java:643)
tomcat_1 | at net.sf.cglib.proxy.Enhancer.firstInstance(Enhancer.java:538)
tomcat_1 | at net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:225)
tomcat_1 | at net.sf.cglib.proxy.Enhancer.createHelper(Enhancer.java:377)
tomcat_1 | at net.sf.cglib.proxy.Enhancer.create(Enhancer.java:285)
tomcat_1 | at net.sf.cglib.proxy.Enhancer.create(Enhancer.java:663)
tomcat_1 | at com.jfinal.aop.Enhancer.enhance(Enhancer.java:87)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
jfinal 3.0 的 Model 中的 getConfig() 方法由 private 改成了 protected 型,可能是由这个引发的:http://www.jfinal.com/share/190 不建议对 model 进行增强,aop 是针对 controller 与 serivce 设计的
没有对Config处理啊。只是在一个model类Country中执行了。旧版本没有问题
使用jfinal3.0后,对model类进行增强的话,就会出现楼主的问题,我也遇到了。2.2版本的不会。
@jfinal
jfinal 3.0 的 Model 中的 getConfig() 方法由 private 改成了 protected 型,可能是由这个引发的:http://www.jfinal.com/share/190 不建议对 model 进行增强,aop 是针对 controller 与 serivce 设计的
为啥要对 Config 进行增强? 此外,jfinal 3.0 并没有对 aop 模块进行过改动,建议进行单步调试来确定问题