AIWAF Java

Source and package versions

One AIWAF repository. Python: py/aiwaf/ · Node.js: js/ · Rust/WASM: rust/ · Java: java/. Source and canonical README. Versions shown are the latest published releases; each package is versioned independently. Current versions are aiwaf 1.1.8 (Python) and aiwaf 1.1.5 (npm), with Rust/Python 0.2.7 and WASM 0.2.5 and Java 1.3.5. Sandbox guides retain their separately pinned builds.

Java 1.3.5 is the latest version on Maven Central and is declared in java/pom.xml. It targets Java 17, Spring Framework 7.0, and Jakarta Servlet 6.1, and runs natively without Rust. Use the Maven dependency below once this version is published to Maven Central; source builds are available from the monorepo.

<dependency>
  <groupId>io.github.aiwaf-project</groupId>
  <artifactId>aiwaf-java</artifactId>
  <version>1.3.5</version>
</dependency>

Current runtime capabilities

  • Spring Boot servlet auto-configuration and live route/annotation discovery.
  • Request controls before the controller and anomaly scoring with actual response status and timing.
  • Native MMDB lookups, trusted-proxy country headers, and weighted UUID probing signals.
  • Scoped per-engine storage with shared atomic enforcement through standalone Redis.
  • Python-compatible six-feature JSON forest state; restricted legacy Java artifact loading.
  • Versioned Redis state namespaces, bounded waits, failure policies, and pool diagnostics.

Repository layout

Java code lives under java/src/main/java/com/aiwaf/, with core, runtime, spring, servlet, and cli packages. Tests are in java/src/test/java/com/aiwaf/. The root README and LICENSE are authoritative.

Continue