Skip to content

Examples and tutorials

Examples and tutorials

Follow one customer application from submission to a stored history and coordinated review. Each project runs on its own so its dependencies and failure behavior are visible.

Follow the learning path

Step Project What to observe
1. Accept an application Your first service Submit over HTTP, read through QueryBus, reject invalid input, and return 404 for an unknown ID
2. Retain its history Onboarding event store Append and reconstruct typed events in PostgreSQL, reject a stale writer, and roll back an invalid batch
3. Coordinate a review Onboarding coordination Exercise Saga compensation, TCC confirmation/cancellation, and ordered Workflow steps with controlled providers

The HTTP project uses an application-owned in-memory repository. The event-store project uses a real PostgreSQL Testcontainers database. The coordination project uses the real framework engines with in-memory provider implementations. They demonstrate separate boundaries; no project silently turns the others into a distributed transaction.

The source and test locations are:

Run the projects

Use JDK 25 and install the framework first. Docker is required for the full framework tests and the PostgreSQL event-store example:

./mvnw -B -ntp install
./mvnw -B -ntp -f docs/examples/getting-started/pom.xml clean verify
./mvnw -B -ntp -f docs/examples/onboarding-event-store/pom.xml clean verify
./mvnw -B -ntp -f docs/examples/onboarding-coordination/pom.xml clean verify

Use the individual guides for the HTTP run command and expected responses. Do not supply production credentials or customer data to these examples.

Extend one capability

Choose the next requirement from the capability journeys. The journeys explain the smallest component choice and link to its configuration and test sources.

Requirement Entry point Setup boundary
Protect customer records Security and identity Trusted issuer, keys, policy, and service-specific access tests
Call another service External services Provider endpoint, credentials, and repeat/failure policy
Publish or receive integration events Event-driven integration Transport or webhook configuration and delivery tests
Add persistent state or documents Domain and data Schema, store, retention, and access configuration
Inspect runtime outcomes Service operations Endpoint exposure, exporters, and operational backend

The complete client example and Agentic bridge samples are additional applications with their own setup. A compile or library test does not establish access to a real provider. Check each example's README before starting services or supplying credentials.

Read reference fragments in context

Module guides also contain scoped API fragments. They show a contract or integration point and identify the application-owned collaborators needed around it. Use the matching source version when copying a fragment; a snippet from a provider guide is not automatically part of the runnable onboarding service.

The Java by example book is a separate repository. Match its sample dependency train to the framework version you are using.