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

rmaucher pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/9.0.x by this push:
     new f7226ac606 Add type check already present elsewhere
f7226ac606 is described below

commit f7226ac6063062fec5bdcf491788c18a75d6677b
Author: remm <[email protected]>
AuthorDate: Fri May 22 11:22:56 2026 +0200

    Add type check already present elsewhere
    
    Add FIXMEs for possible JMX cleanup.
---
 .../apache/catalina/mbeans/GlobalResourcesLifecycleListener.java  | 1 +
 java/org/apache/catalina/mbeans/MBeanFactory.java                 | 8 +++++---
 java/org/apache/catalina/mbeans/MBeanUtils.java                   | 2 ++
 3 files changed, 8 insertions(+), 3 deletions(-)

diff --git 
a/java/org/apache/catalina/mbeans/GlobalResourcesLifecycleListener.java 
b/java/org/apache/catalina/mbeans/GlobalResourcesLifecycleListener.java
index c95926fd1a..16bc43fc30 100644
--- a/java/org/apache/catalina/mbeans/GlobalResourcesLifecycleListener.java
+++ b/java/org/apache/catalina/mbeans/GlobalResourcesLifecycleListener.java
@@ -238,5 +238,6 @@ public class GlobalResourcesLifecycleListener implements 
LifecycleListener {
         if (log.isTraceEnabled()) {
             log.trace("Destroying MBeans for Global JNDI Resources");
         }
+        // FIXME: Implement removing MBeans
     }
 }
diff --git a/java/org/apache/catalina/mbeans/MBeanFactory.java 
b/java/org/apache/catalina/mbeans/MBeanFactory.java
index 30e1799fa6..e36ad9bcea 100644
--- a/java/org/apache/catalina/mbeans/MBeanFactory.java
+++ b/java/org/apache/catalina/mbeans/MBeanFactory.java
@@ -874,9 +874,11 @@ public class MBeanFactory {
         Container container = getParentContainerFromChild(oname);
         Valve[] valves = container.getPipeline().getValves();
         for (Valve valve : valves) {
-            ObjectName voname = ((JmxEnabled) valve).getObjectName();
-            if (voname.equals(oname)) {
-                container.getPipeline().removeValve(valve);
+            if (valve instanceof JmxEnabled) {
+                ObjectName voname = ((JmxEnabled) valve).getObjectName();
+                if (voname.equals(oname)) {
+                    container.getPipeline().removeValve(valve);
+                }
             }
         }
     }
diff --git a/java/org/apache/catalina/mbeans/MBeanUtils.java 
b/java/org/apache/catalina/mbeans/MBeanUtils.java
index f4acb55c74..142e3a73ec 100644
--- a/java/org/apache/catalina/mbeans/MBeanUtils.java
+++ b/java/org/apache/catalina/mbeans/MBeanUtils.java
@@ -725,6 +725,8 @@ public class MBeanUtils {
      */
     static void destroyMBeanUserDatabase(String userDatabase) throws Exception 
{
 
+        // FIXME: UserDatabase MBean management could be improved
+
         ObjectName query;
         Set<ObjectName> results;
 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to