Magnolia 5.7 reached extended end of life on May 31, 2022. Support for this branch is limited, see End-of-life policy. Please note that to cover the extra maintenance effort, this EEoL period is a paid extension in the life of the branch. Customers who opt for the extended maintenance will need a new license key to run future versions of Magnolia 5.7. If you have any questions or to subscribe to the extended maintenance, please get in touch with your local contact at Magnolia.
The Definitions app is the single place to find all definitions loaded by Magnolia through the Registry API.
The app displays active definitions from all sources - JCR and YAML - and origins - classpath, JCR and file system.
Light development introduced an additional configuration source in Magnolia and the app provides an overview of both JCR and file-based definitions. At a glance, back and front-end developers can see the definition sources.
In the Definitions app users can:
- View, search, group and filter definitions by multiple criteria.
- Access definitions in either the Configuration or Resource files app directly from the Definitions app.
The app also shows definition decorations and configuration errors.
Definition types
The app includes all definitions that are bound to a Registry (for example TemplateDefinitionRegistry ).
Definition types:
Templates | Template definitions | |
Dialogs | Dialog definitions | |
Apps | App definitions | |
| Themes | Theme definitions |
Renderers | Renderer definitions | |
Fieldtypes | Field type definitions | |
Mediaeditors | Media editor definitions | |
MessageViews | Message view definitions | |
RestEndpoints | Rest Endpoint definitions | |
Workflows | Workflow definitions | |
Workitemhandlers |
Searching, grouping and filtering definitions
The app offers numerous filtering options to allow you to quickly find what you are looking for. Options can be combined to filter within options and grouped by definition type.
Example: Definitions from 1. all sources and 2. all modules, of 3.all types, with 4. the word teaser, grouped by 5. definition type.
You can refine the results displayed in the dropdown lists by typing the first letter(s) of the expected result in the field. For example in From modules type m for all module names starting with the letter m and ma for only the Mail and Marketing Tags modules
Options:
From module | Of type | With name | Grouped by | |||
optional Select module. Field displays all modules. Default is any modules. | optional Select definition type. Default is all types. | optional Type search term. | required Group results by type, name or source. Default is definition type. | optional Select to display only invalid definitions. Default is all definitions. | optional Select to display only YAML definitions. Default is all definitions. | optional Select to display only decorated definitions. Default is all definitions. |
Viewing definitions
You can expand any definition node to view a representation of the full configuration.
Example: File-based teaser
component in the MTK module.
Accessing definitions
Dedicated actions allow you to access a definition for editing in either the Resource files or Configuration app:
- Show in Resources app displays for file-based definitions. The action opens the file in read only mode in the Resource files app. You can choose to hotfix the definition in the app or edit it on the file system.
Example:textImage
component definition from the Travel demo in the Definitions and Resources apps.
- Show in Configuration app displays for JCR-based definitions. The action opens the definition in the Configuration app where you can edit the definition in the JCR.
Example:login
component definition from the Public User Registration module in the Definitions and Configuration apps.
All YAML definitions display in the Source column as File. The origin of these definitions could be the file system or the classpath. You can see each origin in the Resource files app.
Decorated definitions
Decorated definitions are marked in the Is decorated? column. The Show definition decorators action opens the Applied definition decorators popup which shows the source file and the decorated path of each decorator. Click to access the source file in the Resource files app.
Example: home
template from the Travel Demo (EE Pro version).
Definition errors
The app makes it easy to find problematic definitions:
- Major errors are indicated with the icon in the Definitions tab.
- In the Problems tab all problematic definitions display. You can search for a definition by name, and group and filter by module and error type
- indicates a major error that makes the definition unusable, for example a parse error.
- indicates a warning.
- indicates a deprecated definition.
- The configuration path displays in the Location column.
The app also shows deprecated definitions:
- Deprecated classes used by any definition.
- Deprecated or non-existing templates used by block definitions.
- Deprecated or non-existing page template definitions referenced from site definitions.
- Deprecated or non-existing theme definitions referenced from site definitions.
- Template references:
- Deprecated or non-existing dialogs.
- Deprecated or non-existing component definitions used in page definitions.
- Non-existing template script paths.
- Configured but non-existing renderer.
Configuration
The app is based on the content app framework and configured in YAML on the classpath at /src/main/resources/definitions-app/apps/definitions-app.yaml
.
The app requires NO additional configuration and it is NOT advisable to make any changes to the configuration file.