This is an automated email from the ASF dual-hosted git repository.
jamesnetherton pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 4dc7f8929d7 camel-groovy: Set application context ClassLoader as
GroovyScriptClassLoader parent if present
4dc7f8929d7 is described below
commit 4dc7f8929d75d0ecd7c49519b99bebf79e15baf2
Author: James Netherton <[email protected]>
AuthorDate: Mon Jul 21 10:13:00 2025 +0100
camel-groovy: Set application context ClassLoader as
GroovyScriptClassLoader parent if present
---
.../apache/camel/language/groovy/DefaultGroovyScriptCompiler.java | 7 ++++++-
.../org/apache/camel/language/groovy/GroovyScriptClassLoader.java | 4 ++++
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git
a/components/camel-groovy/src/main/java/org/apache/camel/language/groovy/DefaultGroovyScriptCompiler.java
b/components/camel-groovy/src/main/java/org/apache/camel/language/groovy/DefaultGroovyScriptCompiler.java
index 15a6059aab3..9ce556ef9a5 100644
---
a/components/camel-groovy/src/main/java/org/apache/camel/language/groovy/DefaultGroovyScriptCompiler.java
+++
b/components/camel-groovy/src/main/java/org/apache/camel/language/groovy/DefaultGroovyScriptCompiler.java
@@ -159,7 +159,12 @@ public class DefaultGroovyScriptCompiler extends
ServiceSupport
// use existing class loader if available
classLoader = (GroovyScriptClassLoader)
context.getClassResolver().getClassLoader("GroovyScriptClassLoader");
if (classLoader == null) {
- classLoader = new GroovyScriptClassLoader();
+ ClassLoader applicationContextClassLoader =
context.getApplicationContextClassLoader();
+ if (applicationContextClassLoader != null) {
+ classLoader = new
GroovyScriptClassLoader(applicationContextClassLoader);
+ } else {
+ classLoader = new GroovyScriptClassLoader();
+ }
context.getClassResolver().addClassLoader(classLoader);
// make classloader available for groovy language
context.getCamelContextExtension().addContextPlugin(GroovyScriptClassLoader.class,
classLoader);
diff --git
a/components/camel-groovy/src/main/java/org/apache/camel/language/groovy/GroovyScriptClassLoader.java
b/components/camel-groovy/src/main/java/org/apache/camel/language/groovy/GroovyScriptClassLoader.java
index 638b17cb416..caecdcd78e8 100644
---
a/components/camel-groovy/src/main/java/org/apache/camel/language/groovy/GroovyScriptClassLoader.java
+++
b/components/camel-groovy/src/main/java/org/apache/camel/language/groovy/GroovyScriptClassLoader.java
@@ -33,6 +33,10 @@ public class GroovyScriptClassLoader extends ClassLoader
implements Closeable {
super(GroovyScriptClassLoader.class.getClassLoader());
}
+ public GroovyScriptClassLoader(ClassLoader parent) {
+ super(parent);
+ }
+
@Override
public String getName() {
return "GroovyScriptClassLoader";