#10363·dapr

ActiveMQ Artemis is not a supported pub/sub

Author: alicejgibbonsCreated Aug 17, 2026Updated Sep 17, 2026
Labelskind/enhancement

Description

The pubsub.solace.amqp component (pubsub/solace/amqp) hardcodes a Solace-specific addressing convention: it prefixes every address with topic:// or queue:// before opening an AMQP 1.0 sender/receiver link (see AddPrefixToAddress in amqp.go).

This convention is Solace-specific. ActiveMQ Artemis does not interpret topic:///queue:// prefixes by default — routing type (ANYCAST vs MULTICAST) is resolved via broker-side address-settings/default-address-routing-type, or via custom anycastPrefix/multicastPrefix values configured per-acceptor in broker.xml, which are arbitrary strings the admin chooses (not fixed to topic:///queue://).

As a result, when pointing this component at an Artemis broker (default acceptor config), messages are accepted (address auto-created) but never delivered to subscribers, since the literal address name (e.g. topic://orders) doesn't match what any subscriber is bound to.

To Reproduce

  1. Deploy ActiveMQ Artemis with a default AMQP acceptor (protocols=AMQP, no anycastPrefix/multicastPrefix set).
  2. Configure a pubsub.solace.amqp component pointed at the Artemis broker's AMQP URL.
  3. Subscribe to a topic, then publish to the same topic name.
  4. Observe: publish succeeds, no error, but the subscriber never receives the message.

Expected behavior

Either:

  • A documented broker-side workaround (configuring Artemis acceptor anycastPrefix=queue://;multicastPrefix=topic:// to match the component's convention), and/or
  • A supported pub/sub component/config path for Artemis that doesn't rely on Solace's addressing convention.

Environment

  • Dapr runtime version: 1.18.2

Release Note

RELEASE NOTE: FIX Solace-AMQP addressing assumption breaks compatibility with ActiveMQ Artemis pub/sub