Details
-
Bug
-
Resolution: Cannot Reproduce
-
Major
-
5.2.0.M1
-
None
Description
This affects the current trunk.
The code in the method does this:
String className = this.chainedProperties.getProperty( "drools.workItemManagerFactory",
"org.drools.process.instance.impl.DefaultWorkItemManagerFactory" );
[..]
clazz = (Class<WorkItemManagerFactory>) Thread.currentThread().getContextClassLoader().loadClass( className );
[..]
clazz = (Class<WorkItemManagerFactory>) SessionConfiguration.class.getClassLoader().loadClass( className );
None of this can work for the default factory since drools-core does not depend on drools-flow-core (and creating a dependency would create a cycle). Actually, this won't work for customer code as well, since drools-core won't depend on their bundle.
I suggest to use a declarative service to work around this problem, while keeping this type of instantiation around when OSGi is not on.