2021-02-25 11:38

@lcmkc 是否用 root 运行完全与 jfinal 或者 undertow 无关

切换到相应的用户,直接运行就可以了

在 "非 root" 用户状态下,使用 sudo jfinal.sh start 可以以 root 用户运行

这纯粹是 linux 知识,与 jfinal 肯定是无关的

但你要注意权限问题, 运行起来以后,你的项目代码访问到的文件需要赋予好权限。例如起码你的项目部署目录必须要是当前用户能访问的,仍然是纯 linux 问题

2021-02-25 11:35

jfinal undertow 可以用于部署,轻量、高效。 我已经用于生产环境快三年了,极其稳固、方便

安全性上与 tomcat 没有本质区别,在自己的代码中注意安全就行,例如做好 sql 注入、XSS、CSRF 防护

2021-02-22 17:53

getBean 与 getModel 对于传参的一方有一定的约定条件,注意看文档

2021-02-20 16:49

@玛雅牛 高手看问题就是深刻 👍👍👍

2021-02-19 17:58

加配置 me.set DenyAccessJsp(false)

2021-02-19 16:39

为了维持热加载以后 session 中的数据可以使用,在热加载之前 session 中的数据会被持久化,而持久化需要被持久化的对象实现 Serializable 这个接口

检查一下你存放在 session 中的哪些数据是没有实现这个接口的,注意,不仅是直接对象,还要检查间接对象

此外,你给的信息中其实只有一个 error,其中第一个为 WARN,第二个为 ERROR,第二个是 RejectedExecutionException ,注意查明原因

2021-02-18 22:58

配置文件左侧的井号要删掉:
# undertow.ssl.keyStore=pay.0530net.cn.jks
改成
undertow.ssl.keyStore=pay.0530net.cn.jks

2021-02-07 20:02

消灭问题比解决问题要高明

2021-02-07 20:02

这种情况下我建议用 ajax 交互,请求是在后台异常发生的,页面不会跳转,所以也就无需 keep 这个动作了

2021-02-07 19:28

@zhangtianxiao 如果是必定被增强过,那不但不是多余,而且是必须

2021-02-07 18:57

有些类可能已被 cglib 或者 jfinal proxy 代理过一次了,这时你获取的类名类似于:
com.xxx.yyy.Zzzz$$EnhancerByCglib
或者
com.xxx.yyy.Zzzz$$EnhancerByJFinal

源码:
https://gitee.com/jfinal/jfinal/blob/master/src/main/java/com/jfinal/proxy/proxy_class_template.jf


发文可以贴源码,不要贴图片

2021-02-07 18:51

xss 有很多方法防止,我习惯于用 jsoup 在数据入库前过滤一下

当然,你也可以通过将原 request 包装一下

你的封装我觉得差不多了,可能还有一些方法没有过滤,打开 HttpServletRequest 源码,看看里面有什么方法可疑,然后再将这些方法也过滤一下

2021-02-05 19:45

搞定后可以提交 pull request,参与 jfinal 项目开发:
https://gitee.com/jfinal/jfinal/pulls