Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Require io.vertx.auth.common module (#2716)
Currently, io.vertx.auth.common is required only for compilation. However, it contains the io.vertx.ext.auth.audit.SecurityAudit class, that is used in io.vertx.ext.web.impl.RoutingContextImplBase. Consequently, if users don't add the module requirement in their application, it fails when the first request is sent with: Feb 07, 2025 10:54:29 AM io.vertx.core.impl.ContextImpl SEVERE: Unhandled exception java.lang.NoClassDefFoundError: Lio/vertx/ext/auth/audit/SecurityAudit; at java.base/java.lang.Class.getDeclaredFields0(Native Method) at java.base/java.lang.Class.privateGetDeclaredFields(Class.java:3061) at java.base/java.lang.Class.getDeclaredField(Class.java:2409) at java.base/java.util.concurrent.atomic.AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl$1.run(AtomicIntegerFieldUpdater.java:398) at java.base/java.util.concurrent.atomic.AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl$1.run(AtomicIntegerFieldUpdater.java:396) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.util.concurrent.atomic.AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl.<init>(AtomicIntegerFieldUpdater.java:395) at java.base/java.util.concurrent.atomic.AtomicIntegerFieldUpdater.newUpdater(AtomicIntegerFieldUpdater.java:94) at [email protected]/io.vertx.ext.web.impl.RoutingContextImplBase.<clinit>(RoutingContextImplBase.java:43) So this is a buggy module declaration, because Auth Common is not only required by Vert.x Web during compilation, it's required at runtime. Signed-off-by: Thomas Segismont <[email protected]>
- Loading branch information