Details
-
Bug
-
Status: Closed
-
Resolution: Fixed
-
Master
-
7.0.x
-
Committed
-
1
-
3
Description
There's an issue in the way the MBDisplayContextFactory and WikiDisplayContextFactory are registered that creates an issue when deploying new modules with those components in a specific order.
The classes MBDisplayContextProvider and WikiDisplayContextProvider are not properly registering the components *DisplayContextFactory. They are using ServiceReference instead of the entity and that forces to have the _bundleContext bind, but it might not have been initialized because the references are satisfied before the activate method.
Then, if there are pending *DisplayContextFactory before the *DisplayContextProvider is activated, the reference methods like setWikiDisplayContextFactory won't have the _bundleContext wired and it will fail when adding it to the map.
The fix is to replace the map with a List and use the entity instead of the service reference so we no longer need the bundleContext.