Browse Source

Merge pull request #12820 from richardkchapman/java-resource

HPCC-22579 Support loading resources (as well as classes) from manifest jar files

Reviewed-By: Rodrigo Pastrana <rodrigo.pastrana@lexisnexis.com>
Richard Chapman 6 years ago
parent
commit
57f7235d39
1 changed files with 9 additions and 0 deletions
  1. 9 0
      plugins/javaembed/HpccClassLoader.java

+ 9 - 0
plugins/javaembed/HpccClassLoader.java

@@ -69,6 +69,7 @@ public class HpccClassLoader extends java.lang.ClassLoader
         bytecodeLen = _bytecodeLen;
         bytecode = _bytecode;
     }
+    @Override
     public synchronized Class<?> findClass(String className) throws ClassNotFoundException
     {
         String luName = className.replace(".","/");
@@ -85,6 +86,14 @@ public class HpccClassLoader extends java.lang.ClassLoader
         }
         return result; 
     }
+    @Override
+    public URL getResource(String path)
+    {
+        URL ret = pathLoader.getResource(path);
+        if (ret == null)
+            ret = super.getResource(path);
+        return ret;
+    }
     public static HpccClassLoader newInstance(String classPath, ClassLoader parent, int _bytecodeLen, long _bytecode, String dllname)
     {
         return new HpccClassLoader(classPath, parent, _bytecodeLen, _bytecode, dllname);