2022-12-16 20:07:58.953:INFO:oejs.Server:main: Started @998ms
20:08:05.282 [qtp1413653265-16] INFO index.jsp - before
20:08:05.283 [qtp1413653265-16] INFO index.jsp - after
20:08:06.752 [qtp1413653265-23] INFO org.example.HelloWorldExample - servlet out before
20:08:06.754 [qtp1413653265-23] INFO org.example.HelloWorldExample - servlet out after
2条答案
按热度按时间gopyfrb31#
首先,也是最重要的一点,Jetty 9.x现在已经停止了社区支持。
请参见https://github.com/eclipse/jetty.project/issues/7958上的公告
您现在应该使用Jetty 10+。
对于Logback,不能在Jetty 9.x上使用Logback 1.3.x
这是因为它需要Servlet 4.0.1,Jetty 10+(不是Jetty 9)上提供了Servlet 4.0.1
对于Jetty 9.x,您应该坚持使用Logback 1.2.x,但这也意味着您坚持使用Logback在Logback 1.2.x中没有修复的all of the Hanging / Blocked Thread / Async / 100% CPU bugs(许多在Logback 1.3.x中修复,更多在Logback 1.4.x中修复)。
从Servlet到Jetty的Logback故障
| 日志返回|小服务程序|命名空间|码头|
| - ------|- ------|- ------|- ------|
| 1.2.x版本|Servlet 3.1.x|
javax.servlet
|码头9.x|| 1.3.x版本|Servlet 4.0.x|
javax.servlet
|码头10.x|| 1.4.x版本|Servlet 5.0.x|
jakarta.servlet
|码头11.x|pieyvz9o2#
首先总结
我不知道这个测试场景是否是您想要的Jetty 9,logback 1.3
我尝试建立一个战争文件,使用logback 1.3在jetty 9.4.50中运行。
您可以直接向下滚动到底部,直接查看测试结果。
示例测试项目
pom.xml文件
源代码/main/java/组织/示例/HelloWorldExample.java
源代码/主文件/Web应用程序/索引. jsp
源代码/主文件/资源/日志返回. xml
构建和 Package
mvn clean package
测试
准备
jetty-distribution-9.4.50.v20221201.tar.gz
target/java-hello-web-war-3-1.0-SNAPSHOT.war
复制到jetty-distribution-9.4.50.v20221201/webapps/hello3.war
运行码头
开放航站楼1:
测试
开放航站楼2:
curl 度
curl 度http://localhost:8080/hello 3/helloworld
查看控制台输出
1号航站楼:
查看日志文件输出
jetty-distribution-9.4.50.v20221201/logs/output.log