SOLVED WebLogic 12.2.1.4.0 Startup Failure: NoClassDefFoundError: com/vopm/collector/HTTPData
-
While starting WebLogic Server 12.2.1.4.0 with the WLSDM agent enabled, the server fails to reach the RUNNING state. The process encounters a critical failure during the registration phase with the Administration Server.
Error Log Snippet:
Agent Logger Parsed Level: [INFO]
<Apr 24, 2026 18:57:21 EET 2026>
<Apr 24, 2026 6:57:23 PM EET> <Unable to connect to the Administration Server. Waiting 5 second(s) to retry (attempt number 2 of 3).>
<Apr 24, 2026 6:57:28 PM EET> <Unable to connect to the Administration Server. Waiting 5 second(s) to retry (attempt number 3 of 3).>
<Apr 24, 2026 6:57:33 PM EET> <Could not register with the Administration Server: java.rmi.RemoteException: java.lang.NoClassDefFoundError: com/vopm/collector/HTTPData; nested exception is:
java.lang.NoClassDefFoundError: com/vopm/collector/HTTPData>
<Apr 24, 2026 6:57:33 PM EET> <Version: WebLogic Server 12.2.1.4.0>
<Apr 24, 2026 6:57:33 PM EET> <Server subsystem failed. Reason: A MultiException has 2 exceptions. They are:- java.lang.NoClassDefFoundError: com/vopm/collector/HTTPData
- java.lang.IllegalStateException: Unable to perform operation: post construct on weblogic.management.provider.internal.RuntimeAccessService
A MultiException has 2 exceptions. They are:
-
java.lang.NoClassDefFoundError: com/vopm/collector/HTTPData
-
java.lang.IllegalStateException: Unable to perform operation: post construct on weblogic.management.provider.internal.RuntimeAccessService
at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:392)
at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:487)
at org.jvnet.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:305)
at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85)
at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2126)
at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:116)
at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:698)
at org.jvnet.hk2.internal.ThreeThirtyResolver.resolve(ThreeThirtyResolver.java:78)
at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:212)
at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:235)
at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:358)
at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:487)
at org.jvnet.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:305)
at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85)
at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2126)
-
Solution:
This error typically occurs due to a conflict between the custom JMX MBeanServer builder and the WLSDM agent’s class-loading sequence.
Initial JVM Configuration
The following parameters were present in the startup arguments when the error occurred:
• -Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder
• -DUseSunHttpHandler=trueThe root cause was identified as the javax.management.builder.initial parameter. Forcing the WLSMBeanServerBuilder via this flag can interfere with how the WLSDM collector initializes its classes, leading to the NoClassDefFoundError.
Resolution Steps:-
Navigate to your domain’s bin directory (e.g., setDomainEnv.sh) or check the Server Start tab in the WebLogic Admin Console.
-
If you must keep the JMX builder, you need to resolve the conflict by disabling the extended monitoring or removing the SunHttpHandler:
Either remove: -DUseSunHttpHandler=true Or set: -Dwlsdm.agent.extendedBackendMonitoringEnabled=false
- Perform a full restart of the affected server.
-
-
Solution:
This error typically occurs due to a conflict between the custom JMX MBeanServer builder and the WLSDM agent’s class-loading sequence.
Initial JVM Configuration
The following parameters were present in the startup arguments when the error occurred:
• -Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder
• -DUseSunHttpHandler=trueThe root cause was identified as the javax.management.builder.initial parameter. Forcing the WLSMBeanServerBuilder via this flag can interfere with how the WLSDM collector initializes its classes, leading to the NoClassDefFoundError.
Resolution Steps:-
Navigate to your domain’s bin directory (e.g., setDomainEnv.sh) or check the Server Start tab in the WebLogic Admin Console.
-
If you must keep the JMX builder, you need to resolve the conflict by disabling the extended monitoring or removing the SunHttpHandler:
Either remove: -DUseSunHttpHandler=true Or set: -Dwlsdm.agent.extendedBackendMonitoringEnabled=false
- Perform a full restart of the affected server.
-
-
Thanks for sharing this detailed analysis. I ran into a similar JMX class conflict on WebLogic 12.2.1.4 while testing monitoring agents. It covers some useful background on JVM service initialization issues. Removing
-DUseSunHttpHandler=truefrom the startup args fixed it in my case as well. -
This post is deleted!
