The Intershop Knowledge Portal uses only technically necessary cookies. We do not track visitors or have visitors tracked by 3rd parties.
Please find further information on privacy in the Intershop Privacy Policy and Legal Notice.
References
02-Dec-2025
Reference - ICM Migration Support - Component Instances
Document Properties
Kbid
4G7888
Added to KB
02-Dec-2025
Status
online
Product
Intershop Commerce Management
Last Modified
02-Dec-2025
Public Access
everyone
Doc Type
References
Document Link
https://knowledge.intershop.com/kb/4G7888

This document provides a comprehensive list of all ApplicationType component instances defined in the ICM workspace.

REST API Instances

The following table lists all REST related instances:

ApplicationType Instance Cartridge Category Dependency (external)
intershop.REST app_sf_headless Storefront cartridgeRuntime("com.intershop.business:app_sf_headless")
intershop.EnterpriseBackoffice.RESTAPI sld_enterprise_app Backoffice Enterprise cartridgeRuntime("com.intershop.business:sld_enterprise_app")
intershop.CC app_sf_contactcenter_rest Backoffice CC cartridgeRuntime("com.intershop.business:app_sf_contactcenter_rest")

ApplicationType Instances

For ICM application extensions, the following ApplicationType instances are defined:

ApplicationType Instance Cartridge Category Dependency (external)
intershop.B2CBackoffice sld_ch_consumer_plugin Backoffice Sales Channel cartridgeRuntime("com.intershop.business:sld_ch_consumer_plugin")
intershop.PartnerBackoffice sld_ch_partner_plugin Backoffice Partner cartridgeRuntime("com.intershop.business:sld_ch_partner_plugin")
intershop.EnterpriseBackoffice sld_enterprise_app Backoffice Enterprise cartridgeRuntime("com.intershop.business:sld_enterprise_app")
intershop.SLDSystem sld_system_app System Operations cartridgeRuntime("com.intershop.business:sld_system_app")
intershop.SMC smc System SMC cartridgeRuntime("com.intershop.business:smc")
intershop.System core Platform cartridgeRuntime("com.intershop.platform:core")

Fixing Dependencies - Instruction

Rules for Component Instances and Dependencies

  1. Single ApplicationType Rule: Each non-as_ cartridge should only provide components for ONE ApplicationType instance.
  2. Dependency Matching: A cartridge's dependencies must match its ApplicationType category (don't mix Storefront/Backoffice/System/Platform).
  3. Component Location Rule: Components must be in the correct cartridge according to the ApplicationType mapping table above.

Automated Fix Process

Step 1: Check Component Files

For each cartridge with *.component files:

  1. Scan all .component files in src/main/resources/resources/{cartridge}/components/
  2. Look for <fulfill requirement="app" with="intershop.{ApplicationType}" /> patterns
  3. List all ApplicationType instances found in the cartridge

Step 2: Validate Component Placement

  • Correct: Components match the cartridge's designated ApplicationType from the table above
  • Incorrect: Components belong to different ApplicationTypes than the cartridge's designation (see "Category" in the table above)
    • bc_ cartridge must not reference app_ or sld_ cartridges.
  • Action: Move misplaced components to appropriate cartridge or as_ cartridge

Step 3: Fix Misplaced Components

For components that don't belong in their current cartridge:

  1. Target exists: Move component to the correct cartridge (e.g., intershop.B2CBackofficesld_ch_consumer_plugin_<project>)
  2. Target doesn't exist: Move component to appropriate as_ cartridge (e.g., as_backoffice_<project>)
  3. Update dependencies: Ensure as_ cartridge has cartridgeRuntime dependencies to all referenced cartridges

Step 4: Dependency Validation

For each cartridge that provides ApplicationType instances:

  1. Check build.gradle.kts: Must have cartridge() or cartridgeRuntime() dependency matching the table above
  2. Dependency Type Rules:
    • Use cartridge() if the cartridge needs compile-time access (like implementation)
    • Use cartridgeRuntime() only if runtime access is sufficient (like runtimeOnly)
    • Important: If cartridge() dependency exists, cartridgeRuntime() is redundant and should be removed
  3. Missing dependency: Add the required external dependency (e.g., cartridgeRuntime("com.intershop.business:sld_enterprise_app")) if component files/content is moved.
  4. Extra dependencies: Only remove if they're not project-specific or referenced in component files

Examples

Good: sld_enterprise_app_<project> only contains components for intershop.EnterpriseBackoffice
Bad: sld_enterprise_app_<project> contains components for intershop.B2CBackoffice and intershop.PartnerBackoffice
Fix: Move B2CBackoffice and PartnerBackoffice components to as_backoffice_<project> or as_<project> if exists.

Validation Commands

  • Find all cartridges with component files: find . -name "*.component" -path "*/components/*"
  • Check ApplicationType references: grep -r "intershop\." --include="*.component" */components/
  • Verify dependencies: Check each cartridge's build.gradle.kts for required cartridgeRuntime entries

AI Task - Instruction

  • validate my cartridge dependencies and component files. see docs/ai-instructions/dependencies-component-instances.md. Are there cartridges, with missing dependencies.
  • create new as_ cartridges, if there are not exist.
    • add cartridgeRuntime dependencies at as_ cartridges
    • register new as_ cartridges at ft_ cartridge
Disclaimer

The information provided in the Knowledge Base may not be applicable to all systems and situations. Intershop Communications will not be liable to any party for any direct or indirect damages resulting from the use of the Customer Support section of the Intershop Corporate Website, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.

Home
Knowledge Base
User Manuals
Product Releases
Log on to continue
This Knowledge Base document is reserved for registered customers.
Log on with your Intershop Entra ID to continue.
Write an email to supportadmin@intershop.de if you experience login issues,
or if you want to register as customer.