2018-03-17 21:36

@szs 对于 jfinal 来说 maven 是不可见的,jfinal 是无法去干预 maven 的行为的,jfinal 源代码中没有任何代码是涉及 maven 的

站在上面的角度应该不是 jfinal 的原因,当然也不排除一些不曾预料的原因,但是大概率来说是与 jfinal 无关的

2018-03-17 14:23

@没有顺风的船 新版本默认用的 enjoy,所以 render(String) 这个方法是用的 enjoy,而你以前用的 jsp,所以要将 render(String) 改成 renderJsp(String)

2018-03-17 14:21

@狄二 我自己大量在这么使用,没有报错,所以这个问题很奇怪

你再添加个 static 试试,按理说加不加都可以的

2018-03-17 12:13

@狄二 这么用试一试: Enhancer.enhance(Device.class);

2018-03-17 12:00

这个错误比较奇怪,从来没碰到过,升级一下 cglib 试一下,java 8 运行某一版本的 cglib 会出错

此外,建议直接升级 jfinal,因为新版本 jfinal 使用了较高版本的 cglib

2018-03-17 11:22

@没有顺风的船 在 YourJFinalConfig 中添加下面代码试一下:
public void afterJFinalStart() {
ModelRecordElResolver.setResolveBeanAsModel(true);
}

此外,如果你是用的 weblogic,注意看一下 com.jfinal.ext.kit.ElResolverListener.java 这个代码中的注释,需要将 ElResolverListener 配置到 web.xml 中去。 tomcat、jetty 之类的容器可以不用理会

2018-03-17 11:11

随着 chrome 强制标识非 https 网站为不安全的期限越来越近,这个分享的价值越来越大,jfinal.com 也将择日转成 https,感谢你的分享

2018-03-17 11:08

去掉这一行试试:
druidPlugin.setValidationQuery("SELECT 1 FROM DUAL");

我记得 DruidPlugin为 validation 给过默认配置,或许你的配置覆盖掉默认配置后反而不正常

2018-03-17 11:07

看一下 druid 的官方文档,看有没有提供这个功能,jfinal 中的 DruidPlugin 仅仅是包装了一下 druid 方便使用

2018-03-17 11:06

检查一下用的是 jfinal 哪个版本

由于 jstl 数据读取能力较弱,jfinal 较新的版本对其进行了扩展,出现这个异常有可能是你在用比较老的版本

注意一下是不是依赖多个 jfinal 版本造成的

2018-03-16 17:42

问题错误地发布在了分享频道,随后会被删除,请知悉

2018-03-16 17:42

改成:
User.dao.find("select * from emp where empname = ? and emppassword = ?", username, userpassword);

2018-03-16 16:21

看一下 setCookie(...) 下层的代码,会发现是直接转调了 Java web 规范中的 HttpServerletResponse.addCookie(...);

而 HttpServerletResponse.addCookie(...) 的行为是, add 进去以后,在 html 页面中可以通过 javascript 获取到。 此外,浏览器发起请求时会将 cookie 自动发送到服务端,所以在服务端使用 getCookie(...) 可以获取到

注意上面的关键:getCookie(...) 获取到的是浏览器发送过来请求中的 cookie,而不能去期望在 controller 中当时 set 再当时就 get

在 controller 中,既然经已是setCookie 某个 value 了, 为啥不直接用那个 value,而要再 getCookie(...) 这样多此一举呢?

2018-03-16 11:59

@燕龙910 啥原因呢? 说出来或许可以帮助到碰到同样问题的朋友