This is an automated email from the ASF dual-hosted git repository.
davsclaus 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 50e20ca camel-catalog - Fix language validator classloading from
external editors such as IDEA camel tooling
50e20ca is described below
commit 50e20ca0efcdef1c7a382b045ab5974485109058
Author: Claus Ibsen <[email protected]>
AuthorDate: Wed Apr 28 08:41:23 2021 +0200
camel-catalog - Fix language validator classloading from external editors
such as IDEA camel tooling
---
.../java/org/apache/camel/catalog/impl/AbstractCamelCatalog.java | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git
a/core/camel-core-catalog/src/main/java/org/apache/camel/catalog/impl/AbstractCamelCatalog.java
b/core/camel-core-catalog/src/main/java/org/apache/camel/catalog/impl/AbstractCamelCatalog.java
index be601f1..73d9c6c 100644
---
a/core/camel-core-catalog/src/main/java/org/apache/camel/catalog/impl/AbstractCamelCatalog.java
+++
b/core/camel-core-catalog/src/main/java/org/apache/camel/catalog/impl/AbstractCamelCatalog.java
@@ -38,7 +38,6 @@ import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
-import org.apache.camel.CamelContext;
import org.apache.camel.catalog.ConfigurationPropertiesValidationResult;
import org.apache.camel.catalog.EndpointValidationResult;
import org.apache.camel.catalog.JSonSchemaResolver;
@@ -1308,15 +1307,18 @@ public abstract class AbstractCamelCatalog {
Object context = null;
Object instance = null;
Class<?> clazz = null;
+
try {
// need a simple camel context for the simple language parser to
be able to parse
clazz =
classLoader.loadClass("org.apache.camel.impl.engine.SimpleCamelContext");
context =
clazz.getDeclaredConstructor(boolean.class).newInstance(false);
clazz =
classLoader.loadClass("org.apache.camel.language.simple.SimpleLanguage");
instance = clazz.getDeclaredConstructor().newInstance();
- instance.getClass().getMethod("setCamelContext",
CamelContext.class).invoke(instance, context);
+ clazz = classLoader.loadClass("org.apache.camel.CamelContext");
+ instance.getClass().getMethod("setCamelContext",
clazz).invoke(instance, context);
} catch (Exception e) {
- // ignore
+ clazz = null;
+ answer.setError(e.getMessage());
}
if (clazz != null && context != null && instance != null) {