Guide - Cartridges

Introduction - Overview of the Cartridge Development Cycle

This document provides important clues about Cartridge Development. It is addressed to developers and can be used as a guideline for the cartridge development.

Cartridges may vary considerably with respect to their actual content and their complexity. All cartridge development, however, follows a general and unified development process, no matter whether the cartridge functionality is simple or complex, generic or site-specific in nature.

The cartridge development cycle, which will be discussed in detail in this guide, can be divided into four stages:

  1. 1831115918
  2. 1831115918
  3. 1831115918
  4. 1831115918


CartridgeA code container for implementation artifacts like templates, pipelines, Java code etc. that provide business logic or technical functionality to Intershop 7 (Enfinity Suite 6)


Also see Intershop Studio User Guide for detailed specific operating procedures and instructions. (The Intershop Studio User Guide is available as Intershop Studio's Online Help.)

Planning the Cartridge

Before embarking on a development project, the cartridge should be carefully planned. At the beginning, you should focus on some general questions. For example, you need to exactly delineate the functionality of the entire application and decide whether to package the entire application within a single cartridge or to distribute the functionality across a set of cartridges. You should also carefully examine which existing Intershop 7 functionality your project can be based on. See  Planning a Cartridge Project for some hints.

Creating the Cartridge Project

The actual development process starts out with several steps to create the cartridge project. These steps include:

  • Creating the cartridge development directory structure
  • Checking (and perhaps modifying) environment variables
  • Declaring cartridge properties
  • Writing the cartridge controller class

Programming Cartridge Functionality

Programming new business functionality is at the heart of cartridge development.

Programming typically cuts across several programming layers:

  • Programming new business objects and manager classes
  • Programming new pipelets
  • Designing/Modifying templates
  • Configuring pipelines

Building and Deploying the Cartridge

For new business functionality to become available on a server, it needs to be built, packaged, and deployed. The cartridge build and deployment process comprises the following steps:

  • Assembling additional resources required by the cartridge
  • Building the cartridge
  • Deployment and installation

Planning a Cartridge Project

When starting the development of a new application on the Intershop 7 platform it is recommended to identify required cartridges at the beginning of the development process.

Before embarking on a development project, you should carefully plan and design the cartridge. Planning and designing carefully will save development time and resources, and significantly contribute to the ultimate success of the project.

The following tasks are part of the design stage of a cartridge project.

Define Cartridge Functionality

Complex applications typically consist of more than one cartridge. It is essential to clearly define the overall functionality of the application and how the functionality is to be distributed across individual cartridges. Hence, cartridge development always starts out with a detailed and accurate definition of the functionality that the new cartridge is going to deliver. See Concept - Cartridges | Architectural Layers and Cartridge Types, for a model that can provide orientation.

Examine Existing Functionality

Once the cartridge functionality has been defined, you should carefully examine connections to existing Intershop 7 functionality. The goal of this exercise is to identify where exactly the cartridge plugs in, and whether components of the functionality you want already exist. Is it really necessary to develop a new cartridge or would it perhaps be sufficient to reorganize an existing pipeline? Do you need to extend functionality or does the core functionality already exist, with only a few modifications necessary?

Determine Dependencies

All cartridge projects are going to depend on functionality provided by other cartridges. For example, every cartridge depends on basic functionality implemented in the core cartridge, such as the cartridge controller class or the base classes for pipelets and business objects. If complex business functionality is implemented, typically many more dependencies exist. Check these dependencies carefully and make sure that all required cartridges are available on the development system.

Define Localization Requirements

It is important to be clear about the localization requirements of a cartridge. The cartridge should seamlessly integrate with Intershop 7's mechanisms for localization and internationalization.

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 Web site, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.
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.
Knowledge Base
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 if you experience login issues,
or if you want to register as customer.