If a base module offers the configuration of a component (e.g. the component for the administration of the users), it is currently difficult to configure this component differently in its project. If a property "foo" of the component shall be changed, a template must be introduced (or adapted) in the base module and this property "foo" must be set. Then in the project this template must be referenced and the property must be set. Even worse is the procedure to copy the layout file into its own project and adapt it.
Improvement
It should be possible to specify an overlay file for a layout file in which a configuration snippet is entered for a component, identified by its name, which modifies the component according to the wishes. See LayoutStructure.
Code migration
- The unused properties "compoundMaster" and "sizeAttribute" in layout templates are removed.
- The properties "parentName" and "projectTreeName" in layout templates and masterFrame.xml's must be removed.
- Regenerate layouts (Ant layout_setup).
- A new folder WEB-INF/layouts/my.project.name is created, which contains all partial layouts of the application.
- This folder also contains all administrative layouts (which are actually already defined by base components. These should be removed in a follow-up refactoring after updating to #24407 (see migration instructions there).
- Component names referencing components of different *.layout.xml files must be qualified ( myComponentName becomes `my/component.layout.xml#myComponentName).
- The same applies to all component references from non-layout XML files (scripted tests, test templates, Relation.xml's, Role Profile definitions, ViewStateConfiguration.xml's and calls to ComponentName#newName(String)).
- For XML files, the launch configuration"Migration #23037 UpdateComponentName" can be customized and launched with the XML files or folders.
- The ant target"z_create_qualified_name_mapping" can be used to create a mapping that contains the qualified component name for a local component name to simplify the migration.
Open points
- The main tab cannot be configured, because then the whole MainLayout will be replaced.
Test
No additional test.