CompanionCompanion
Companion for Delivery
Companion for Business
Companion for Integration
Contact us
Companion for Delivery
Companion for Business
Companion for Integration
Contact us
  • Companion for Integration

    • Introduction
    • Getting Started
    • Configuration
    • Excel templating
    • How it works
  • YAML Configuration

    • Principles
    • Syntax
    • Validation
  • Custom Functions

    • Summary
    • arrayToJSON
    • bool
    • concatValueAndUnit
    • convertUnit
    • currentContextId
    • exportTime
    • eval
    • firstNonEmpty
    • getContextName
    • getEvents
    • getLastEventTime
    • getReferencesByAttributeGroup
    • getStoredValue
    • getWorkspaceId
    • hash
    • hasStoreKey
    • if
    • integer
    • join
    • mergeInheritedValues
    • multiValuesToJSON
    • number
    • nodeList
    • order
    • resolveUnitLabel
    • serializeAssetPushLocationsToJSON
    • serializeAttributeLinksToJSON
    • serializeContextReferenceToJSON
    • serializeContextReferencesToJSON
    • serializeContextValuesToJSON
    • serializeDataContainerToJSON
    • serializeDataContainersToJSON
    • serializeListOfValueValuesToJSON
    • serializeReferencesToJSON
    • serializeReferenceToJSON
    • serializeValuesToJSON
    • store
    • toXML
    • uppercase
  • Execution

    • Summary
    • Composite
    • From STEP
    • Standalone
    • Performance statistics
  • Configuration

    • ActiveMQ extension
    • Amazon AWS extension (SNS, SQS, Kinesis, S3)
    • ElasticSearch/OpenSearch extension
    • File extension (Excel, CSV, JSON, XML, JSONL, XMLL)
    • Kafka extension
    • Kafka Core extension
    • MongoDB/Cosmos DB extension
    • SQL extension
    • REST extension
    • Google Pub/Sub extension
  • c4i SaaS

    • Introduction
    • Managing jobs
    • Managing executions
    • Managing users
    • Changelog
  • Changelog

    • Core features changelog
    • ActiveMQ extension changelog
    • Amazon AWS extension changelog
    • Composite extension changelog
    • ElasticSearch extension changelog
    • File extension changelog
    • Kafka extension changelog
    • Kafka Core extension changelog
    • MongoDB/Cosmos DB extension changelog
    • SQL extension changelog
    • REST extension changelog
    • Google Pub/Sub extension changelog

ActiveMQ extension

Plugin ID

The plugin ID for Apache ActiveMQ is fr.cantor.c4i.ActiveMQDelivery.

This plugin supports both ActiveMQ 5 and ActiveMQ Artemis.

Properties

Environment independent parameters (set in extension configuration or properties file)

Property keyDescriptionMandatoryDefault value
configAssetIdThe ID of the asset containing the YAML mappingsYes
connectionThe name of the connection in the c4i.properties fileYes
prefixDestinationNamesWithContextIdtrue or false to indicate whether or not to prefix the topics/queues names with the context IDsYes
cacheConfigThe ID of the asset containing the JCS configurationNo
displayPerfStattrue to display performance statistics (see Performance statistics dedicated page)Nofalse

Environment dependent parameters (set in centralized c4i.properties file)

Property keyDescriptionMandatoryDefault value
brokerUrlURL of the ActiveMQ brokerYes
usernameThe username to connect to the ActiveMQ brokerNo
passwordThe password to connect to the ActiveMQ brokerNo

Configuration example

Topics vs Queues

By default, c4i will publish data to topics. If you want to publish data to a queue, the mapping target name must start with "queue://".

Complex key handling

A key is not required for the produced messages.

However, if one is supplied, the following must be taken into consideration :

A "simple" key (made of a single mapping) will simply be mapped into the target document, as any other mapping.

Example :

- Product:
  products[id]:
    - ./@ID: id
    - ./@UserTypeID: objectType
    - Name/text(): name

Will produce the following JSON document :

{
  "id": "PRD1",
  "objectType": "PRD",
  "name": "Exemple product"
}

A "complex key" (made of two or more mappings) will be added into the target document as a sub-document, under key id.

Example :

- Product:
  products[id, objectType]:
    - ./@ID: id
    - ./@UserTypeID: objectType
    - Name/text(): name

Will produce the following JSON document :

{
  "id": {
    "id": "PRD1",
    "objectType": "PRD"
  },
  "name": "Exemple product"
}
Last Updated: 6/5/26, 9:24 AM
Next
Amazon AWS extension (SNS, SQS, Kinesis, S3)