βπ₯οΈπ
Software architecture of Adobe Campaign, directory organization, server configuration (Tomcat/Apache), and management of URLs and static resources (images, XSL, JSP). This guide is ideal for system administrators and developers working with Adobe Campaign Classic deployments.
Introduction
Adobe Campaign Classic is built on a Java EE architecture, typically deployed with Tomcat (port 8080) or integrated with a web server like Apache (ports 80/443). This article covers:
- Directory structure and configuration files.
- Server configuration (Tomcat/Apache).
- URL mapping and static resource management (images, XSL, JSP).
- Common use cases and troubleshooting tips.
Notes for Apache:
Installation directory
By default, Adobe Campaign is installed under the neolane user. To verify the home directory:
$ cat /etc/passwd | grep neolane
neolane:x:1001:1001::/usr/local/neolane:/bin/bash
For this guide, we assume Adobe Campaign is installed in:
/usr/local/neolane/nl6/
(Referred to as / in the following sections.)
Adobe Campaign Namespaces
In Adobe Campaign, namespaces are prefixes used to organize schemas, tables, and APIs. They help avoid naming conflicts and logically group related functionalities. Below are the core namespaces and their purposes.
NMS: Neolane Marketing Server
Covers marketing-related schemas and tables, such as:
- Recipients (
nms:recipient): The main table for storing customer profiles. - Deliveries (
nms:delivery): Tables for email, SMS, and other campaign deliveries. - Campaigns (
nms:operation): Tables for managing marketing campaigns. - Lists (
nms:group): Tables for managing recipient groups. - Templates (
nms:template): Templates for deliveries and campaigns.
XTK: eXtended ToolKit
Covers low-level operations, technical and system-level functionalities, such as:
- Workflows (
xtk:workflow): Workflow schemas and execution. - JavaScript APIs (
xtk:javascript): Server-side JavaScript APIs. - Session management (
xtk:session): Authentication and session handling. - Data schemas (
xtk:srcSchema): Base schemas for extending data models.
CRM: Customer Relationship Management
CRM connector functionalities, such as integrating with external CRM systems (e.g., Salesforce, Microsoft Dynamics):
- CRM connectors (`crm:connector): Configuration for CRM integrations.
- Synchronization (
crm:sync): Data synchronization between Adobe Campaign and CRM systems.
Directory Structure Overview
Adobe Campaignβs installation directory contains several key subdirectories:
/usr/local/neolane/nl6/
βββ bin/ # Executable scripts and binaries
βββ conf/ # Configuration files
βββ customers/ # Customer-specific configurations
βββ datakit/ # Core application data and resources
βββ deprecated/ # Legacy files (v6.0)
βββ examples/ # Sample files and templates
βββ java/ # Java libraries
βββ lang/ # Language packs
βββ migration/ # Migration scripts
βββ rsetup/ # Setup and deployment scripts
βββ tomcat-7/ # Tomcat server files
βββ conf/
βββ apache_neolane.conf # Apache Configuration file
βββ server.xml # Tomcat Configuration file
βββ web/ # Web application files
βββ zoneinfo/ # Timezone data
βββ logs/ # Log files
β βββ catalina.YYYY-MM-DD.log # Tomcat logs
β βββ ...
βββ var/ # Runtime and workflow data
βββ res/ # Instance-specific resources
β βββ <instanceName>/
βββ <instanceName>/ # Instance-specific directories
βββ billing/
βββ export/
βββ incoming/
βββ log/ # Log files for MTA, workflows, etc.
β βββ inMail.log
β βββ mta.log
β βββ runwf.log
β βββ stat.log
β βββ wfserver.log
βββ mta/
βββ postupgrade/
βββ redir/
βββ upload/
βββ workflow/ # Workflow execution files
β βββ wf-<internalName>/
β βββ httpTransfer/
β βββ xxx.xml
βββ logins.log
URL Mapping and Static Resources
Common Application Server URLs
For an Adobe Campaign server (e.g., https://myserver-mkt-prod1.campaign.adobe.com or http://t.my-customserver.com):
| URL Path | Description |
|---|---|
/view/home |
Homepage of the Adobe Campaign client. |
/nl/ |
/usr/local/neolane/nl6/web/ |
/nl/webForms/defaultWebApp.css |
/usr/local/neolane/nl6/web/webforms/defaultWebApp.css |
/webApp/{webApp-internalName |
web apps |
/{jssp-namespace}/{jssp-name}.jssp |
JSSP pages |
/nl/jsp/logon.jsp |
Logon page, redirects to Client install/download page |
/nl/jsp/install.jsp |
Client install/download page |
Health check
/r/test-> test page, returns XML, see https://docs.campaign.adobe.com/doc/AC/en/PRO_Production_procedures_Monitoring_processes.html#Automatic_monitoring/nl/jsp/ping.jsp-> ping
Resource Server (CDN)
Adobe Campaign uses a resource server (CDN) to serve public resources, such as images and files uploaded via the client console. Example URLs:
/r/test-> test page/res/instance_name/-> Public resource files
Default URL Mappings
Adobe Campaign maps URLs to local paths for serving static resources (images, JSP, XSL). Hereβs a summary of the most common mappings:
| Desc | URL | Local path |
|---|---|---|
| Client exposition | /nl |
/web |
| Datakit images | /crm/img |
/datakit/crm/eng/img |
| . | /ncm/img |
/datakit/ncm/eng/img |
| . | /nl/img |
/datakit/nl/eng/img |
| . | /nms/img |
/datakit/nms/eng/img<ul><li>Neolane Marketing Server (NMS) in nms-logo-01.png</li><li>program.png, asset.png, task.png</li></ul> |
| . | /xtk/img |
/datakit/xtk/eng/img<ul><li>Navigation menus: print, paste, xtksave</li><li>Navigation explorer: navnode.png, navroot.png, loading.gif</li><li>Workflow UI: wfplay.png, /background, /activities</li><li>Schema explorer: xtklink.png</li></ul> |
| Datakit XSL | /nms/xsl |
/datakit/nms/eng/xsl |
| . | /xtk/xsl |
/datakit/xtk/eng/xsl |
| JSP exposition | /nl/jsp |
/datakit/nl/eng/jsp |
| . | /nms/jsp |
/datakit/nms/eng/jsp |
| . | /xtk/jsp |
/datakit/xtk/eng/jsp |
| Legacy v6.0 js/css | /xtk |
/deprecated/xtk |
| . | /nms |
/deprecated/nms |
| . | /crm |
/deprecated/crm |
Empty path for web.xml |
` ` | /web |
| Other | /cus |
../customers |
| . | /res |
/var/res |
| . | /examples |
/examples |
Conclusion
Understanding Adobe Campaignβs directory structure, server configuration, and URL mapping is essential for administrators and developers. This guide provides a foundation for managing and troubleshooting Adobe Campaign Classic deployments.