Files
Flash5/flash-extensions/flash-ext-view-thymeleaf/docs/handlers.md
T

822 B

Handlers

Use ThymeleafHandler for class-based Thymeleaf routes.

Lifecycle

  • onViewInit() runs once at boot.
  • render(...) runs per request.

Use onViewInit() to cache dependencies via require(...).

Example

import models.dev.relism.flash.Request;

@GET("/dashboard")
@Template("pages/dashboard")
public final class DashboardPage extends ThymeleafHandler {

    private DashboardService service;

    @Override
    protected void onViewInit() {
        service = require(DashboardService.class);
    }

    @Override
    public ViewModel render(Request req) {
        return ViewModel.empty()
                .with("title", "Dashboard")
                .with("stats", service.stats());
    }
}

Use render(Request, Response) when you need response access while building model variables.