OK, looks like we are narrowing down on problem no. 2 (see here [1] for all four).
Stefan wrote in Gerrit #3004: > I guess that some of the components of the context tries to > access SarosPluginContext (why ?) which is not initialized yet. Stefan then wrote: > Seems I guessed right [...] > > de.fu_berlin.inf.dpp.intellij.ui.actions.AbstractSarosAction.<init> > (AbstractSarosAction.java:48) > at > de.fu_berlin.inf.dpp.intellij.ui.actions.FollowModeAction.<init> > (FollowModeAction.java:80) > [...] Indeed, the FollowModeAction is created as a component [2], instantiated through "sarosContext.initialize()" which in turn leads to the failing call [3]. Two questions here: First, is there any reason to treat FollowModeAction (and LeaveSessionAction for that matter) as components? I think this was a mistake made in commit 7e89c9d back in June 2014 [4], when SarosIntelliJContextFactory was created as a poor copy of SarosEclipseContextFactory, which certainly did *not* contain references to these action classes [5]. So, the solution seems clear to me: Delete both action classes from the context. However, these two lines were commented out until b2e685f [6] in November 2014. So, secondly, it's totally unclear to me how for last year these two lines could *not* have the crashing effect they had now. Shouldn't Saros/I have crashed on every start? I mean, since b2e68f5 until recently, this call was made ... > // Make sure that all components in the container are > // instantiated > sarosContext.getComponents(Object.class); ... which should have instantiated all classes references in the container, including both actions, right? Stefan's change was essentially something like this: - sarosContext.getComponents(Object.class); + sarosContext.getComponents(); Can anyone explain that difference between [7] and [8]? Franz [1] http://article.gmane.org/gmane.comp.ide.eclipse.saros.devel/1747 [2] https://github.com/saros-project/saros/blob/master/de.fu_berlin.inf.dpp.intellij/src/de/fu_berlin/inf/dpp/intellij/context/SarosIntellijContextFactory.java#L98 [3] https://github.com/saros-project/saros/blob/master/de.fu_berlin.inf.dpp.intellij/src/de/fu_berlin/inf/dpp/intellij/ui/actions/AbstractSarosAction.java#L48 [4] https://github.com/saros-project/saros/commit/7e89c9d#diff-096f3021be7e7e528c122dde74a559eaR75 [5] https://github.com/saros-project/saros/blob/7e89c9d/de.fu_berlin.inf.dpp/src/de/fu_berlin/inf/dpp/SarosEclipseContextFactory.java [6] https://github.com/saros-project/saros/commit/b2e685f#diff-096f3021be7e7e528c122dde74a559eaR95 [7] http://picocontainer.com/javadoc/core/org/picocontainer/PicoContainer.html#getComponents%28%29 [8] http://picocontainer.com/javadoc/core/org/picocontainer/PicoContainer.html#getComponents%28java.lang.Class%29 ------------------------------------------------------------------------------ Site24x7 APM Insight: Get Deep Visibility into Application Performance APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month Monitor end-to-end web transactions and take corrective actions now Troubleshoot faster and improve end-user experience. Signup Now! http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140 _______________________________________________ DPP-Devel mailing list DPP-Devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dpp-devel