1

我的应用程序在 Wicket 7.6.0 上运行良好。但是现在我在从 Wicket 7.6 迁移到 8.5 后面临以下异常。

引起:java.lang.NoClassDefFoundError: org/apache/wicket/util/convert/converter/ZeroPaddingIntegerConverter at org.apache.wicket.extensions.yui.calendar.DateTimeField.(DateTimeField.java:119)

引起:java.lang.ClassNotFoundException: org.apache.catalina.loader.WebappClassLoaderBase.loadClass (WebappClassLoaderBase.java:1358) 的 org.apache.wicket.util.convert.converter.ZeroPaddingIntegerConverter org.apache.catalina.loader。 WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1180) ... 77 更多

在我的代码中没有使用这个类“ ZeroPaddingIntegerConverter ”,但仍然得到这个类的这个错误。

在 Wicket 8.x 版本中已弃用 ZeroPaddingIntegerConverter 类。

4

1 回答 1

3

wicket-datetime 模块已随 Wicket 8 移除并移至WicketStuff。在您的代码中,您可能将旧的 wicket-datetime 模块 (7.6.0) 与 Wicket 8.5 混合在一起。只需删除旧模块并将其替换为 WicketStuff 依赖项:

<dependency>
  <groupId>org.wicketstuff</groupId>
  <artifactId>wicket-datetime</artifactId>
  <version>8.5.0</version>
</dependency>
于 2020-10-21T13:02:44.257 回答