In the repository workspace, we have a repository safe ribbon (repository-safe-ribbon.xml).
First, I think it is never loaded because the repository workspace is not load in safe mode.
Secondly, it refers some components that are not loaded in safe mode:
- org.ametys.repository.maintenance.GarbageCollector
- org.ametys.repository.maintenance.Reindexing
- org.ametys.repository.maintenance.ConsistencyCheck
Thirdly, labels are not prefixed by the plugin where they are defined:
- RIBBON_TABS_TAB_HOME_LABEL (plugin repository or plugin cms - we are in jcr plugin so both are not compatible)
- RIBBON_TABS_TAB_HOME_GROUPS_GROUP_TOOL_LABEL (plugin repository or plugin cms - we are in jcr plugin so both are not compatible)
- RIBBON_TABS_TAB_MAINTENANCE_LABEL (nowhere)
- RIBBON_TABS_TAB_MAINTENANCE_GROUP_TASKS_LABEL (nowhere)
- RIBBON_TABS_TAB_MAINTENANCE_GROUP_REPORT_LABEL (nowhere)
So if we force the ribbon loading (forcing RepositoryWorkspaceGenerator to return the safe ribbon), it fails because of previous components. After commenting the components, we don't have translated i18n keys.
Also, in the repository plugin, we redefine the feature with these components (repository.maintenance.tasks.ui). It seems that anything changes except the feature is safe and the component ids are different. Maybe it is useless.