wildfly-extras / wildfly-camel

WildFly Camel Subsystem
Apache License 2.0
73 stars 58 forks source link

ClassNotFoundException: JavaDialectConfiguration #2831

Closed tdiesler closed 4 years ago

tdiesler commented 5 years ago

Camel3: drools-7.23.0.Final

CrossRef: https://issues.apache.org/jira/browse/CAMEL-13654

tdiesler commented 5 years ago

drools-7.23 uses this code in org.drools.core.common.ProjectClassLoader ...

    public void setDroolsClassLoader(ClassLoader droolsClassLoader) {
        if (getParent() != droolsClassLoader && isOsgiClassLoader(droolsClassLoader)) {
            this.droolsClassLoader = droolsClassLoader;
            if (CACHE_NON_EXISTING_CLASSES) {
                nonExistingClasses.clear();
            }
        }
    }

drools-7.14 uses

    public void setDroolsClassLoader(ClassLoader droolsClassLoader) {
        if (getParent() != droolsClassLoader) {
            this.droolsClassLoader = droolsClassLoader;
            if (CACHE_NON_EXISTING_CLASSES) {
                nonExistingClasses.clear();
            }
        }
    }

In a non flat classpath environment, the later version of drools does not allow the CL to get set to anything that is not an OSGi CL.

mariofusco commented 5 years ago

I reported the problem here and fixed it with this commit. Fix will be available with drools 7.26.0.Final