Wicket Scripture

"God says: Use Wicket."

Java developers who have lost their way, receive the component-oriented gospel.
Do not choose the wide gate of request-driven frameworks; enter through the narrow gate of Wicket.

"Beloved believers, stand firm. Trust in Wicket, and let not the noise of the wide gate shake your heart." - Proclamation of the Apostle

Walk the Path of Wicket

You may have walked the Spring Boot path so far. But here is a different and rigorous approach: Apache Wicket 10.x. This scripture is a practical guide for Java developers who want to learn Wicket's component-oriented model from fundamentals to implementation.

"Bind HTML and Java one-to-one; then type safety shall bless your code." - Wicket Scripture
Scripture Edition 10.8.0 Java 17+ Required Blessing of Jakarta EE

What is Apache Wicket?

Apache Wicket is a component-oriented web framework for Java. It brings a desktop-style programming model to web development, mapping HTML templates and Java classes one-to-one. This enables a highly type-safe and reusable architecture.

Unlike request-driven frameworks such as Spring MVC + Thymeleaf, Wicket lets you describe form handling and AJAX interactions directly in Java components.

Who This Guide Is For

Temple Requirements

ToolRequirement
JavaJDK 17 or later (JDK 21 recommended)
Apache WicketVersion 10.8.0
Build ToolApache Maven 3.8+
IDEEclipse (or equivalent)
Servlet ContainerJakarta Servlet 5.0+ (Jetty 11+, Tomcat 10+)

Table of Scripture

1

Comparison

Compare Wicket's component-oriented approach with Spring Boot's request-driven model.

2

Setup Ritual

Create a Wicket project with Maven archetype, import it into Eclipse, and run it with Jetty.

3

Doctrine: Wicket Worldview

Learn component trees, the HTML/Java mapping, and Wicket's request lifecycle.

4

First Miracle

Build your first page and implement simple interactive behavior.

5

Sacred Components

Use foundational components such as Label, Link, and WebMarkupContainer.

6

Form Rituals

Build forms with TextField, DropDownChoice, validators, and model binding.

7

Miracle of Multiplication

Render repeated data with ListView, DataView, and table-like patterns.

8

AJAX Divine Power

Update UI parts without full page reload using Wicket's AJAX components.

9

Behavior Secrets

Attach reusable behavior logic to components without inheritance.

10

Panels and Rebirth

Compose reusable UI units with Panel, Fragment, and Border.

11

Truth of Models

Understand IModel, PropertyModel, and CompoundPropertyModel deeply.

12

Path of Pilgrimage

Navigate between pages with setResponsePage and BookmarkablePageLink.

13

Trials and Verification

Test components and pages effectively using WicketTester.

"Fear not. Wicket 10 is wrapped in Jakarta's light; the age of javax has passed." - From the Preface of Scripture Edition 10.8.0

This scripture is based on Apache Wicket 10.8.0. Wicket 10.x requires Java 17+ and uses the Jakarta namespace (jakarta.servlet). It is not binary compatible with older Wicket versions that relied on javax.servlet.