<< keesj:removed code again . this patch fixed the problem for orion but
broke resine and tomcat >>
A solution may be to exit the init() of MMBase when mmbaseroot has been set.
That particular bit of code can be easily synchronised. Assignment of mmbaseroot in getMMBase() can then be removed (the init sets it):
so in init:
synchronized (key) {
if (mmbaseroot != null) return;
mmbaseroot = this;
}
Btw not sure if the 'key' can be mmbaseroot as it may point to the class we're in. Maybe just grab a private object.
and in getMMBase():
if (mmbaseroot==null) getModule("mmbaseroot",true);
return mmbaseroot;
