From 4c1fdd05ee52b1d55833c95ff5df47e56b6b68d2 Mon Sep 17 00:00:00 2001 From: Grzegorz Grzybek Date: Mon, 2 Mar 2026 12:54:29 +0100 Subject: [PATCH] ARTEMIS-5924 - Fix broker node display in JMX tree under heavy RBAC config --- .../src/artemis-tree-processor.ts | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/artemis-console-extension/artemis-extension/packages/artemis-console-plugin/src/artemis-tree-processor.ts b/artemis-console-extension/artemis-extension/packages/artemis-console-plugin/src/artemis-tree-processor.ts index 64862b3..5749ae2 100644 --- a/artemis-console-extension/artemis-extension/packages/artemis-console-plugin/src/artemis-tree-processor.ts +++ b/artemis-console-extension/artemis-extension/packages/artemis-console-plugin/src/artemis-tree-processor.ts @@ -90,9 +90,9 @@ function findBrokers(children: MBeanNode[] | undefined): MBeanNode[] { } const brokers: MBeanNode[] = [] for (const c of children) { - if (c.id.endsWith('-folder')) { - if (oldBrokers.has(c.name)) { - const oldBrokerNode = oldBrokers.get(c.name)! + if (oldBrokers.has(c.name)) { + const oldBrokerNode = oldBrokers.get(c.name)! + if (c.id.endsWith('-folder')) { const newBrokerNode = new MBeanNode(null, `Broker ${c.name}`, true) newBrokerNode.icon = c.icon newBrokerNode.expandedIcon = c.expandedIcon @@ -107,6 +107,14 @@ function findBrokers(children: MBeanNode[] | undefined): MBeanNode[] { newBrokerNode.adopt(c) }) brokers.push(newBrokerNode) + } else { + // the broker doesn't have children at all, but we still need the node + const newBrokerNode = new MBeanNode(null, `Broker ${c.name}`, false) + newBrokerNode.icon = c.icon + newBrokerNode.objectName = oldBrokerNode.objectName + newBrokerNode.mbean = oldBrokerNode.mbean + newBrokerNode.propertyList = oldBrokerNode.propertyList + brokers.push(newBrokerNode) } } }