2019-07-18 11:37
@牧马人 这个版本可以用 jetty-server 2019.3
NoClassDefFoundError 是一个很基础的异常,检查三个项:
1:依赖是不是存在
2:依赖如果存在,但是有多个版本的依赖存在
3:maven 本地库的 jar 包是不是被损坏
要确保:依赖存在、只有一个版本、maven 本地库 jar 包没被损坏
其中最后一个问题,需要你手动删掉本地 maven 库中的相关目录, 让 maven 重新下载 jar 包
2019-07-17 17:13
@邓小杰 jfinal undertow 是不可能回调 afterJFinalStart() 两次的,单步调试一下找原因
2019-07-17 16:55
@邓小杰 这事肯定与 jfinal 无关了,检查一下 tomcat 部署时的坑:
https://my.oschina.net/jfinal/blog/353062
2019-07-17 16:30
@邓小杰 这个是 java 基础, 代码如果被阻塞,程序执行到那就不会动了, 你 new 出一个线程是让这个线程继续往下走,你的主线程才得以继续
这个问题与 jfinal 是完全无关的, 纯粹 java 基础
2019-07-17 15:48
@think-takn 如果你实在懒得去找源因,做一个 Handler, 花几行代码解决一下:
public class MyHandler extends Handler {
public void handle(String target, req, resp, isHandled) {
if (target.endsWith("/")) {
target = target.substring(0, target.length() -1);
}
next.handle(target, req, resp, isHandler);
}
}
最后在 configHandler 中配置一下:
configHandler(Handlers me) {
me.add(new MyHandler());
}
2019-07-17 15:40
@阿龙 通过改写 Utf8Encoder 即可, 相当于是做一个新的 Utf8mb4Encoder,这部分接口是开放的,你也可以自己写一个, 然后自己通过我前面回复中的方法让其生效
jfinal 中绝大部分功能都是开放可扩展的