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.

Reply via email to