From 80bfd4b587ee5adc86953ca0ea56c46b7f789d90 Mon Sep 17 00:00:00 2001
From: Valery Kharseko <vharseko@3a-systems.ru>
Date: Mon, 09 Sep 2024 09:05:44 +0000
Subject: [PATCH] [#376] FIX SNMP monitoring config (#381)

---
 opendj-server-legacy/src/snmp/src/org/opends/server/snmp/SNMPConnectionHandler.java |   17 +++++++++++------
 1 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/opendj-server-legacy/src/snmp/src/org/opends/server/snmp/SNMPConnectionHandler.java b/opendj-server-legacy/src/snmp/src/org/opends/server/snmp/SNMPConnectionHandler.java
index 7b78067..7c8704b 100644
--- a/opendj-server-legacy/src/snmp/src/org/opends/server/snmp/SNMPConnectionHandler.java
+++ b/opendj-server-legacy/src/snmp/src/org/opends/server/snmp/SNMPConnectionHandler.java
@@ -13,6 +13,7 @@
  *
  * Copyright 2008-2009 Sun Microsystems, Inc.
  * Portions Copyright 2014-2016 ForgeRock AS.
+ * Portions Copyright 2024 3A Systems, LLC
  */
 package org.opends.server.snmp;
 
@@ -249,12 +250,16 @@
         try {
             String url = "jar:" + file.toURI().toURL() + "!/";
             URL u = new URL(url);
-            URLClassLoader sysloader =
-              (URLClassLoader)ClassLoader.getSystemClassLoader();
-            Class sysclass = URLClassLoader.class;
-            Method method = sysclass.getDeclaredMethod("addURL", URL.class);
-            method.setAccessible(true);
-            method.invoke(sysloader, u);
+            ClassLoader sysloader =ClassLoader.getSystemClassLoader();
+            try {
+                Method method = sysloader.getClass().getDeclaredMethod("addURL", URL.class);
+                method.setAccessible(true);
+                method.invoke(sysloader, u);
+            }catch (NoSuchMethodException e) {
+                Method method = sysloader.getClass().getDeclaredMethod("appendToClassPathForInstrumentation", String.class);
+                method.setAccessible(true);
+                method.invoke(sysloader, file.toString());
+            }
         }
         catch (Throwable t) {
         }

--
Gitblit v1.10.0