|
Every time a new ServiceDispatcher is created, it calls
ServiceEcaUtil.readConfig(). This is turn walks *all* installed ofbiz
components, finding any ecas, and *adding* them to the global map in
the ServiceEcaUtil class.
readConfig does not protect against being called a second(or
third/fourth) time. So, each time it is called, another copy of the
eca rules will be added.
Every single ofbiz component has it's own dispatcher created. This
then loads it's own ServiceDispatcher. In the ServiceDispatcher
constructor, ServiceEcaUtil.readConfig() is called. The later then
has no protection against being called multiple times.
Could any one else confirm this?
|