2019-02-26 13:17

jfinal 开发的项目是标准的 java web 项目,将 jar 改成 war ,删掉 jetty-server 和 jfinal undertow 项目的依赖,打成 war 包即可

这里有相关文档:
https://www.jfinal.com/doc/1-7
https://www.jfinal.com/doc/1-11

2019-02-26 13:15

解决办法是对的,但是没有生效,可能是你的配置文件没有起作用,再细心试一下

2019-02-25 18:48

Enjoy 模板引擎对 UTF-8 的 encoding 做过性能优化,某些偏门字符在 被编码为 UTF-8 时会出现异常,此时可以通过继承扩展 EncoderFactory 来解决编码异常


具体用法如下:

1:创建 MyEncoderFactory
public class MyEncoderFactory extends EncoderFactory {
public Encoder getEncoder() {
return new JdkEncoder(charset);
}
}

2:配置 enjoy 切换到自己的 MyEncoderFactory
public void configEngine(Engine me) {
me.getEngineConfig().setEncoderFactory(new MyEncoderFactory());
}

2019-02-25 18:16

可能是 maven 依赖的 jedis 下载 jar 包时出错了,将本地 maven 库中的 jedis 目录删掉,让 maven 重新下载

2019-02-25 17:50

强调一下,这个是 cos 这个第三方组件不支持,jfinal 为此升级了 cos 到 2017.5

2019-02-25 17:49

cos 升级到 2017.5 这个版本

如果不升级的话,注意 form 表单中用于上传文件的 input 域的 name 属性值要保持唯一性

2019-02-25 17:48

@jacky1982728 jfinal 1.4 是好多年前的版本了,是老项目维护?

建议升级到最新版本,这里有详细的升级文档:
https://www.jfinal.com/doc/14-1

2019-02-25 15:52

@liam_fang 你想要的是一个 saveOrUpdate() 方法,目前没有提供,可以在 base model 中自己写几行代码,类似:
public void saveOrUpdate() {
if (getId() != null) {
update();
} else {
save();
}
}

2019-02-25 15:44

用 update() 方法即可

2019-02-25 15:17

本质是浏览器的行为引起的, jfinal 服务端是提供了下载,但浏览器看着是一个 .txt 文件就尝试打开它了

2019-02-25 15:16

调试问题肯定就与 jfinal 无关了,建议使用 jfinal undertow,调试比在 tomcat 下方便得多,响应也快得多:
https://www.jfinal.com/doc/1-2

关闭服务器并没有报错,而是一个警告,注意 tomcat 的措辞:This is very likely

也就是说 tomcat 并不能确定是不是有问题

这个问题可能是 druid 这个数据库连接池中有非 daemon 线程,所以在 shutdown tomcat 时无法被关闭引起的,一般不影响使用,建议使用 jfinal undertow,整个世界清静了

2019-02-25 15:09

点击右键另存为即可

2019-02-25 12:42

@CHENASER 错发到频道的贴子,后续会清掉,请知悉

2019-02-25 11:29

这里是 jetty server 的使用方法
https://www.jfinal.com/doc/1-6