This is an automated email from the ASF dual-hosted git repository.

mattrpav pushed a commit to branch activemq-6.2.x
in repository https://gitbox.apache.org/repos/asf/activemq.git


The following commit(s) were added to refs/heads/activemq-6.2.x by this push:
     new 1b7b1e0089 [#1911] Update resource cleanup on queueBrowse servlet 
(#1912)
1b7b1e0089 is described below

commit 1b7b1e0089abfbbb6745f21f692e73bb2d81b08f
Author: Matt Pavlovich <[email protected]>
AuthorDate: Tue Apr 14 12:16:04 2026 -0500

    [#1911] Update resource cleanup on queueBrowse servlet (#1912)
    
    (cherry picked from commit 52bef00e510790b0a63eb287e285d6787671bbc6)
---
 .../apache/activemq/web/QueueBrowseServlet.java    | 54 +++++++++++-----------
 .../java/org/apache/activemq/web/WebClient.java    |  4 +-
 2 files changed, 30 insertions(+), 28 deletions(-)

diff --git 
a/activemq-web/src/main/java/org/apache/activemq/web/QueueBrowseServlet.java 
b/activemq-web/src/main/java/org/apache/activemq/web/QueueBrowseServlet.java
index 435ffdc6c8..c39aa81fde 100644
--- a/activemq-web/src/main/java/org/apache/activemq/web/QueueBrowseServlet.java
+++ b/activemq-web/src/main/java/org/apache/activemq/web/QueueBrowseServlet.java
@@ -67,34 +67,36 @@ public class QueueBrowseServlet extends HttpServlet {
     // 
-------------------------------------------------------------------------
     protected void doGet(HttpServletRequest request, HttpServletResponse 
response) throws ServletException, IOException {
         try {
-            WebClient client = WebClient.getWebClient(request);
-            Session session = client.getSession();
-            Queue queue = getQueue(request, session);
-            if (queue == null) {
-                throw new ServletException("No queue URI specified");
-            }
-
-            String msgId = request.getParameter("msgId");
-            if (msgId == null) {
-                MessageRenderer renderer = getMessageRenderer(request);
-                configureRenderer(request, renderer);
-
-                String selector = getSelector(request);
-                QueueBrowser browser = session.createBrowser(queue, selector);
-                renderer.renderMessages(request, response, browser);
-            }
-            else {
-                XmlMessageRenderer renderer = new XmlMessageRenderer();
-                QueueBrowser browser = session.createBrowser(queue, 
"JMSMessageID='" + msgId + "'");
-                if (!browser.getEnumeration().hasMoreElements()) {
-                    response.sendError(HttpServletResponse.SC_NOT_FOUND);
-                    return;
+            try(WebClient client = WebClient.getWebClient(request);
+                Session session = client.getSession()) {
+                Queue queue = getQueue(request, session);
+                if (queue == null) {
+                    throw new ServletException("No queue URI specified");
                 }
-                Message message = (Message) 
browser.getEnumeration().nextElement();
 
-                PrintWriter writer = response.getWriter();
-                renderer.renderMessage(writer, request, response, browser, 
message);
-                writer.flush();
+                String msgId = request.getParameter("msgId");
+                if (msgId == null) {
+                    MessageRenderer renderer = getMessageRenderer(request);
+                    configureRenderer(request, renderer);
+
+                    String selector = getSelector(request);
+                    try (QueueBrowser browser = session.createBrowser(queue, 
selector)) {
+                        renderer.renderMessages(request, response, browser);
+                    }
+                } else {
+                    XmlMessageRenderer renderer = new XmlMessageRenderer();
+                    try (QueueBrowser browser = session.createBrowser(queue, 
"JMSMessageID='" + msgId + "'")) {
+                        if (!browser.getEnumeration().hasMoreElements()) {
+                            
response.sendError(HttpServletResponse.SC_NOT_FOUND);
+                            return;
+                        }
+                        Message message = (Message) 
browser.getEnumeration().nextElement();
+
+                        PrintWriter writer = response.getWriter();
+                        renderer.renderMessage(writer, request, response, 
browser, message);
+                        writer.flush();
+                    }
+                }
             }
         }
         catch (JMSException e) {
diff --git a/activemq-web/src/main/java/org/apache/activemq/web/WebClient.java 
b/activemq-web/src/main/java/org/apache/activemq/web/WebClient.java
index f074e06781..9c528b2792 100644
--- a/activemq-web/src/main/java/org/apache/activemq/web/WebClient.java
+++ b/activemq-web/src/main/java/org/apache/activemq/web/WebClient.java
@@ -61,7 +61,7 @@ import org.slf4j.LoggerFactory;
  *
  *
  */
-public class WebClient implements HttpSessionActivationListener, 
HttpSessionBindingListener, Externalizable {
+public class WebClient implements HttpSessionActivationListener, 
HttpSessionBindingListener, Externalizable, AutoCloseable {
 
     public static final String WEB_CLIENT_ATTRIBUTE = 
"org.apache.activemq.webclient";
     public static final String CONNECTION_FACTORY_ATTRIBUTE = 
"org.apache.activemq.connectionFactory";
@@ -279,7 +279,7 @@ public class WebClient implements 
HttpSessionActivationListener, HttpSessionBind
                 if (broker == null) {
                     throw new IllegalStateException("missing brokerURL 
(specified via " + BROKER_URL_INIT_PARAM + " init-Param) or embedded broker");
                 } else {
-                    brokerURL = "vm://" + broker.getBrokerName();
+                    brokerURL = broker.getVmConnectorURI().toString();
                 }
             }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact


Reply via email to