gpt4 book ai didi

Wicket 9 和 Tomcat 10 无法转换 jakarta.servlet.Filter

转载 作者:行者123 更新时间:2023-12-04 11:18:38 32 4
gpt4 key购买 nike

我正在尝试使用 Wicket 项目“QuickStart”
Netbeans 11、Java 11、Tomcat 10、Wicket 9 和 Ubuntu 18.04。

当我安装 war 包并启动它时,它抛出:20-May-2020 09:23:37.067 GRAVE [] org.apache.catalina.core.StandardContext.filterStart Exception at start [wicket.quickstart]
java.lang.ClassCastException:类 org.apache.wicket.protocol.http.WicketFilter 不能被转换为类 jakarta.servlet.Filter(org.apache.wicket.protocol.http.WicketFilter 在加载器 org.apache 的未命名模块中。 catalina.loader.ParallelWebappCl*assLoader")

有没有人以前见过这个问题,如果是这样,我可以做些什么来解决这个问题?

非常感谢您的回答。

最佳答案

问题是 Tomcat 10 使用 jakarta.**包 (Jakarta EE 9) 而 Wicket 9.x 仍然基于 javax.**包(Java EE 8)。
解决方法是:

  • 使用 Tomcat 9.x
  • 使用 https://github.com/apache/tomcat-jakartaee-migration将 Wicket 应用程序(.war 文件)从 javax 迁移到雅加达
  • 部署 javax.**基于应用程序进入 $TOMCAT10_HOME/webapps-javaee/文件夹。它将自动迁移到 jakarta.**通过 Tomcat。
  • 关于Wicket 9 和 Tomcat 10 无法转换 jakarta.servlet.Filter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61906447/

    32 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com