Updated July 21, 2026
To delete one or more ActiveMQ messages, open the queue in QueueExplorer, find and select the intended rows, then choose Delete or press the Delete key. Use Purge only when every available message in the queue should be removed.
This guide applies to Apache ActiveMQ Classic. QueueExplorer does not currently support ActiveMQ Artemis.
If a message can be repaired or belongs on another destination, moving or exporting it is usually more useful than deleting it immediately.
QueueExplorer filters the messages it has loaded; the broker does not provide a database-style full-text search over every message body. Increase the load limit carefully if the target is not in the first batch. QueueExplorer Professional can extract values from JSON, XML, or text payloads using JSON expressions, XPath, or regular expressions and expose them as filterable columns.
With the intended rows selected, use the toolbar Delete command, choose Delete from the context menu, or press the Delete key. Review the confirmation carefully before proceeding.
The queue can change between browsing and deletion. A consumer may receive a selected message, or a newly arrived message may alter the displayed order. Stop or pause consumers when you need a controlled maintenance window, then refresh immediately before selecting and deleting.
Right-click the queue and choose Purge when the goal is to remove all currently available messages. Purge is faster and clearer than loading a backlog and selecting every displayed row, but it is also much broader than selected deletion.
Messages already dispatched to consumers can be in flight rather than available in the queue view. Transaction rollback, consumer recovery, or a lost connection can return such messages later, so verify again after the maintenance window.
A dead-letter queue is still a queue, so the same selected-delete and purge operations apply. ActiveMQ Classic commonly
uses ActiveMQ.DLQ by default, although its
dead-letter strategy
can be configured with individual dead-letter queues.
With a shared DLQ, first inspect the original-destination metadata and payload. Do not assume every message belongs to the same application or source queue. If the underlying failure has been corrected, consider moving selected messages back for reprocessing instead of deleting them.
Yes. Browse the queue, identify the row by its body and properties, select it, and use Delete. Purge is a separate queue-wide operation.
No. Selected deletion and purge remove messages; they do not delete the queue definition.
A producer may have sent a duplicate, or a previously dispatched message may have returned after rollback or recovery. Compare JMS and application identifiers, timestamps, and redelivery state before assuming it is the same stored copy.
See what is happening in ActiveMQ and resolve message problems without writing one-off tools. Browse queues and live topics, inspect message contents, and manage your ActiveMQ Classic brokers from one desktop application. Try it free on Windows, macOS, or Linux.