On 07/08/2011 03:31 AM, [email protected] wrote:
Hi there,the creation of the delegator done in GenericDelegator fails for me, when starting ofbiz or running run-install-exttest. This is the exception I am getting for each delegator [java] 2011-07-08 10:15:17,691 (ofbiz-config-2) [ GenericHelperFactory:62 :WARN ] [java] ---- exception report ---------------------------------------------------------- [java] Exception: java.lang.ClassNotFoundException [java] Message: org.ofbiz.entity.datasource.GenericHelperDAO [java] ---- stack trace --------------------------------------------------------------- [java] java.lang.ClassNotFoundException: org.ofbiz.entity.datasource.GenericHelperDAO [java] java.net.URLClassLoader$1.run(URLClassLoader.java:202) [java] java.security.AccessController.doPrivileged(Native Method) [java] java.net.URLClassLoader.findClass(URLClassLoader.java:190) [java] java.lang.ClassLoader.loadClass(ClassLoader.java:307) [java] java.lang.ClassLoader.loadClass(ClassLoader.java:248) [java] org.ofbiz.entity.datasource.GenericHelperFactory.getHelper(GenericHelperFactory.java:60) [java] org.ofbiz.entity.GenericDelegator.initializeOneGenericHelper(GenericDelegator.java:268) [java] org.ofbiz.entity.GenericDelegator.access$000(GenericDelegator.java:89) [java] org.ofbiz.entity.GenericDelegator$1.call(GenericDelegator.java:287) [java] org.ofbiz.entity.GenericDelegator$1.call(GenericDelegator.java:285) [java] java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) [java] java.util.concurrent.FutureTask.run(FutureTask.java:138) [java] java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:98) [java] java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:206) [java] java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [java] java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [java] java.lang.Thread.run(Thread.java:680) [java] -------------------------------------------------------------------------------- When removing the ExecutionPool specific code which returns the Callable stuff from the GenericDelegator everything gets back to work, so there might be some problem. Perhaps anyone knows more than me about this :-) Regards and have a nice day!
I'm not surprised there are race conditions in ofbiz. The double-checked lock(DCL) pattern is broken, and shouldn't be used.
I'll try to spend some time looking into this.
