> 
> > From the url mapping it seems to be used for mycloud which is obsolete
> > I think
> 
> Should we remove it and get rid of the servlet class then?

Chiradeep and Edison are right person for this question

> 
> > _pluginsMap is non-static but s_locators is. ComponentLocator.
> > getLocator which essentially calls ComponentLocator
> > .getLocatorInternal will synchronize on s_locators, that means
> > ComponentLocators having the same name should not be initialized twice.
> So  pluggable services  twice initialized  should be caused by some other 
> issue.
> 
> Looking at the code, we are getting a component by
> ConfigurationServer.Name and then by ManagementServer.Name, and from
> debugging earlier I'd found the issues with this code;
> 
>           ConfigurationServer c =
> (ConfigurationServer)ComponentLocator.getComponent(ConfigurationServ
> er.Name);
>           //ConfigurationServer c = new ConfigurationServerImpl();
>           try {
>               c.persistDefaultValues();
>               s_locator =
> ComponentLocator.getLocator(ManagementServer.Name);
>                   ManagementServer ms =
> (ManagementServer)ComponentLocator.getComponent(ManagementServ
> er.Name);

Then we always have two copies of each singleton. It didn't cause problem 
before because most time we use  
ComponentLocator.getComponent(ManagementServer.Name)

> 
> > I don't know where does our Spring IOC get initialized, but if
> > ComponentLocator is loaded by spring with a name other than
> > ManagementServer.Name, then there would be two copies of
> > ComponentLocator which load all plugins twice
> 
> For javelin ComponentLocator is no more and starting that we will use spring
> DI and for getting components without @Inject I've seen usage of a new
> ComponentContext.
> 
> Regards.

Reply via email to