SPI Implementations

SPI modules provide implementations of SPIs defined by the Apache Isis framework itself. As the table below shows, these are typically for cross-cutting concerns such as auditing.

Module Description Implements
3rd party dependencies

Persists records of changes (one record per changed property) using an AuditEntry entity.


Persist action invocations and property edits as CommandJdo entities.

This enables profiling and (in conjunction with the Audit module) enhanced auditing.


Whenever the error page is displayed to the user, automatically log the details in JIRA and provide the ticket details to the end-user.

Whenever the error page is displayed to the user, automatically post the details to a Slack channel and display an random image.

The default implementation shows a random kitten (!), but this can be customised.

Submits an XML representation of member interactions (action invocations and property edits) to an Apache ActiveMQ queue.

Provides the ability to manage users, roles, and permissions, by way of an Apache Shiro realm.

Users have roles, roles have permissions, and permissions are associated with application features (derived from the Apache Isis metamodel).

Permissions themselves can either allow or veto the ability to view or change any application feature.

Persists session entries representing users logging in or out of the application.


Allow the logged-in user to be switched dynamically, ie to impersonate some other user. Intended for prototyping and demos only.