Comparing Single Delivery Webapp Mode and Multi Delivery Webapp Mode

Info: Configure multiple delivery web applications within the same project only when separate development teams need to work independently on their respective delivery webapps. In most scenarios, use multiple channels within a single delivery web application.

This page compares Multi Delivery Webapp Mode and Single Delivery Webapp Mode. Use this comparison to interpret documentation that is specific to Multi Delivery Webapp Mode when working with a Single Delivery Webapp Mode project structure.

Single Delivery Webapp ModeMulti Delivery Webapp Mode
HCM sites support is disabled by setting the use.hcm.sites flag in the hcm.properties file located in src/main/resources of the site module.HCM sites support is enabled by default. No hcm.properties file is required.
The delivery web application does not include an hcm-site.yaml file.The delivery web application includes an hcm-site.yaml file in the src/main/webapp/META-INF folder. This file specifies the name and hstRoot for the delivery web application.
All repository data definitions, including delivery web application-specific data such as HST configuration and web files or hst-addon-hcm-site, are packaged with the CMS/platform web application.Repository data definitions specific to the delivery web application, such as HST configuration and web files or hst-addon-hcm-site, are packaged with the delivery web application.
Delivery webapp-specific repository data definitions are included in the same artifact as CMS/platform-specific definitions.Delivery webapp-specific repository data definitions are separated into a distinct artifact or Maven module, typically repository-data/site.
The delivery web application is implemented as a single Maven module.Component and bean classes for the delivery web application are placed in a separate Maven module, typically site/components. This separation supports IDE auto-completion when editing Freemarker templates in the module containing the web files.
The CMS/platform web application is implemented as a single Maven module.A dedicated Maven module for CMS dependencies, typically cms-dependencies, is included. This module supports building the CMS/platform web application alongside a separate delivery web application project.
The CMS mount for each HST Virtual Host Group must be defined under /hst:platform.The CMS mount for each HST Virtual Host Group must be defined under /hst:platform.
The delivery web application's hst-config.properties file must set hst.configuration.rootPath to /hst:hst, matching the project's YAML definitions.Each delivery web application's hst-config.properties file must set hst.configuration.rootPath to /hst:<site-name>, where <site-name> defaults to myproject and must match the hstRoot path defined in hcm-site.yaml.
The project-settings.xml file for Essentials requires adjustment to work correctly with Single Webapp Mode projects.Essentials is designed to work with this project structure by default.
Share Feedback
Page: /about/for-architects/multi-site-multi-tenant/single-vs-multi-site-mode
Section: About
Category *