Fork me on GitHub

Isis has one mandatory configuration file, For the webapp viewers, this typically lives alongside the web.xml file in the WEB-INF directory.

In addition, Isis will also read from a number of supplementary configuration files (if present), for each of the configured components. For example:

This approach allows configuration to be partitioned by component.

It is also possible to externalize all configuration files so that they reside outside of WEB-INF directory; this is discussed here.

Specifying Components

A running Isis instance requires a persistor (aka objectstore), the authentication mechanism, the authorization mechanism, and a user profile store. It also requires some sort of viewer or viewers.

The objectstore, authentication, authorization and profilestore are specified in the file. For example, this is the configuration of the simple archetype:


The available values are registered in; alternatively the fully qualified class name can be specified. In either case the appropriate component must also (of course) be added as a dependency to the pom.xml files.

The viewer is not specified in the file; rather it is implied by the configuration of WEB-INF/web.xml file. The archetypes are a good point of reference for the required servlet context listeners and servlets; every viewer has its own requirements.

Componentized configuration Files by component

As noted in the introduction, the configuration can optionally be broken out by component and also component implementation.

This is also supported for the configured viewer(s). However, because the configured viewer(s) is/are not listed in, an additional hint is required in the web.xml file to tell Isis which viewers are in use.

For example, to specify that the Wicket viewer and Restful Objects viewers are configured, specify:


The table below summarizes the additional configuration files that are searched for the most commonly configured components:

Component type Component implementation Additional configuration files
Object Store JDO (DataNucleus)
Authentication Shiro
Authorization Shiro
Viewer Wicket
Viewer Restful Objects
Profile Store In-memory