Bug 507427 - Crash while switching the perspective
Summary: Crash while switching the perspective
Status: CLOSED INVALID
Alias: None
Product: RAP
Classification: RT
Component: RWT (show other bugs)
Version: 3.1   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: needinfo
Depends on:
Blocks:
 
Reported: 2016-11-12 12:25 EST by Michael Fritscher CLA
Modified: 2017-01-31 02:55 EST (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Fritscher CLA 2016-11-12 12:25:24 EST
While switching to another perspective I get following. It happens only on a specific perspective. Sorry, I can't make a little demo now, but it used to work - I think even on 3.1.

2016-11-12 18:18:33.764:WARN:oejs.ServletHandler:qtp499290143-32: ERROR:  /gui;jsessionid=oys2i9q2xrfpivszs5zlo9mm
java.lang.NullPointerException
	at org.eclipse.swt.widgets.Composite.getChildren(Composite.java:124)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.resetTabIndices(ControlLCAUtil.java:89)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.resetTabIndices(ControlLCAUtil.java:92)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.resetTabIndices(ControlLCAUtil.java:92)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.resetTabIndices(ControlLCAUtil.java:92)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.resetTabIndices(ControlLCAUtil.java:92)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.resetTabIndices(ControlLCAUtil.java:92)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.recalculateTabIndex(ControlLCAUtil.java:83)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.renderChanges(ControlLCAUtil.java:52)
	at org.eclipse.swt.internal.widgets.shellkit.ShellLCA.renderChanges(ShellLCA.java:129)
	at org.eclipse.swt.internal.widgets.shellkit.ShellLCA.renderChanges(ShellLCA.java:1)
	at org.eclipse.rap.rwt.internal.lifecycle.WidgetLCA.render(WidgetLCA.java:40)
	at org.eclipse.swt.internal.widgets.displaykit.DisplayLCA$RenderVisitor.render(DisplayLCA.java:313)
	at org.eclipse.swt.internal.widgets.displaykit.DisplayLCA$RenderVisitor.visit(DisplayLCA.java:297)
	at org.eclipse.swt.internal.widgets.WidgetTreeUtil.accept(WidgetTreeUtil.java:32)
	at org.eclipse.swt.internal.widgets.displaykit.DisplayLCA.renderShells(DisplayLCA.java:175)
	at org.eclipse.swt.internal.widgets.displaykit.DisplayLCA.render(DisplayLCA.java:101)
	at org.eclipse.rap.rwt.internal.lifecycle.Render.execute(Render.java:32)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle.continueLifeCycle(RWTLifeCycle.java:155)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle.sleep(RWTLifeCycle.java:229)
	at org.eclipse.swt.widgets.Display.sleep(Display.java:1258)
	at org.eclipse.ui.application.WorkbenchAdvisor.eventLoopIdle(WorkbenchAdvisor.java:361)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2734)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2694)
	at org.eclipse.ui.internal.Workbench.access$5(Workbench.java:2530)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:701)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:684)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:157)
	at de.zft.kommunikationsframework_gui_common.Init.run(Init.java:89)
	at de.zft.kommunikationsframework_gui_common.rap.EntryPoint.createUI(EntryPoint.java:28)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWTLifeCycle.java:177)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:290)
	at java.lang.Thread.run(Thread.java:745)
	at org.eclipse.rap.rwt.internal.lifecycle.UIThread.run(UIThread.java:107)
Comment 1 Michael Fritscher CLA 2016-11-12 16:44:48 EST
Ok, on 3.0 it works, on 3.1 I get this crash - so it is a regression.
Comment 2 Ivan Furnadjiev CLA 2016-11-14 04:26:43 EST
Michael,
the NPE at Composite.java:124 means "children" field is null. Unfortunately, I don't understand how it's possible. The "children" list is initialized in the Composite constructor and it's never reset to null. Without a snippet to reproduce it it's hard to trace it. Could you try to debug it at your side - find why "children" field is null?
Comment 3 Ivan Furnadjiev CLA 2016-12-05 02:06:21 EST
Michael, any additional information about the issue?
Comment 4 Michael Fritscher CLA 2017-01-22 10:12:07 EST
I'll try to get some more debug information as I stumbled over this problem again.
Comment 5 Michael Fritscher CLA 2017-01-30 15:40:14 EST
Got it. The inner cause was quite funny: a createPartControl() created a thread which created a tree widget without proper (a)syncExec. The result was a 

code = 22, message = Invalid Thread access

Daemon Thread [InitOrdnerCC] (Suspended (exception SWTException))	
	SWT.error(int, Throwable, String) line: 3710	
	SWT.error(int, Throwable) line: 3631	
	SWT.error(int) line: 3602	
	Tree(Widget).error(int) line: 1018	
	Tree(Widget).checkWidget() line: 956	
	Tree(Control).getShell() line: 257	
	Tree(Control).checkBackground() line: 623	
	Tree(Control).createWidget() line: 212	
	Tree(Control).<init>(Composite, int) line: 205	
	Tree(Scrollable).<init>(Composite, int) line: 74	
	Tree(Composite).<init>(Composite, int) line: 89	
	Tree.<init>(Composite, int) line: 178	
	StorageOrdnerView(OrdnerView).buildTree() line: 94	
	OrdnerView$1.run() line: 63	
	Thread.run() line: not available	

somehow this had let to the mentioned crash. After fixing this it works :-)
Comment 6 Michael Fritscher CLA 2017-01-30 15:50:18 EST
The log on stdout (the backtrace before I got only via running in debug mode and the debug-view in eclipse):


2017-01-30 21:28:04.499:INFO::Start Level: Equinox Container: 70bc6d98-2ae7-0016-1d00-ad260bf5acf0: Logging initialized @5056ms
2017-01-30 21:28:04.767:INFO:oejs.Server:Start Level: Equinox Container: 70bc6d98-2ae7-0016-1d00-ad260bf5acf0: jetty-9.3.9.v20160517
2017-01-30 21:28:04.864:INFO:oejsh.ContextHandler:Start Level: Equinox Container: 70bc6d98-2ae7-0016-1d00-ad260bf5acf0: Started o.e.j.s.ServletContextHandler@3b745d4f{/,null,AVAILABLE}
2017-01-30 21:28:04.898:INFO:oejs.AbstractConnector:Start Level: Equinox Container: 70bc6d98-2ae7-0016-1d00-ad260bf5acf0: Started ServerConnector@3595a10d{HTTP/1.1,[http/1.1]}{0.0.0.0:10080}
2017-01-30 21:28:04.899:INFO:oejs.Server:Start Level: Equinox Container: 70bc6d98-2ae7-0016-1d00-ad260bf5acf0: Started @5457ms

!SESSION 2017-01-30 21:28:00.161 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.8.0_73
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=de_DE
Command-line arguments:  -dev file:C:/SVN/AMS/trunk/AMS/Software/.metadata/.plugins/org.eclipse.pde.core/gui/dev.properties -os win32 -ws win32 -arch x86_64 -console -consolelog -data C:\SVN\AMS\trunk\AMS\Software/.metadata/.plugins/org.eclipse.rap.tools.launch/gui

!ENTRY org.eclipse.rap.ui 4 0 2017-01-30 21:28:40.244
!MESSAGE Unhandled event loop exception
!STACK 0
java.lang.NullPointerException
	at org.eclipse.swt.widgets.Tree.getColumnCount(Tree.java:1105)
	at org.eclipse.swt.widgets.Tree.computeSize(Tree.java:1683)
	at org.eclipse.swt.layout.FormData.computeSize(FormData.java:118)
	at org.eclipse.swt.layout.FormData.getWidth(FormData.java:147)
	at org.eclipse.swt.layout.FormData.getRightAttachment(FormData.java:248)
	at org.eclipse.swt.layout.FormLayout.layout(FormLayout.java:303)
	at org.eclipse.swt.layout.FormLayout.layout(FormLayout.java:282)
	at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:569)
	at org.eclipse.swt.widgets.Composite$1.run(Composite.java:911)
	at org.eclipse.rap.rwt.internal.lifecycle.ProcessActionRunner.add(ProcessActionRunner.java:30)
	at org.eclipse.swt.widgets.Composite.notifyResize(Composite.java:906)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2542)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:900)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:927)
	at org.eclipse.swt.layout.FillLayout.layout(FillLayout.java:222)
	at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:569)
	at org.eclipse.swt.widgets.Composite$1.run(Composite.java:911)
	at org.eclipse.rap.rwt.internal.lifecycle.ProcessActionRunner.add(ProcessActionRunner.java:30)
	at org.eclipse.swt.widgets.Composite.notifyResize(Composite.java:906)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2542)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:900)
	at org.eclipse.ui.internal.LayoutPart.setBounds(LayoutPart.java:301)
	at org.eclipse.ui.internal.presentations.PresentablePart.setBounds(PresentablePart.java:175)
	at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.layoutContent(PresentablePartFolder.java:128)
	at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.layout(PresentablePartFolder.java:407)
	at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.setBounds(PresentablePartFolder.java:255)
	at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation.setBounds(TabbedStackPresentation.java:237)
	at org.eclipse.ui.internal.PartStack.setBounds(PartStack.java:1204)
	at org.eclipse.ui.internal.LayoutTree.doSetBounds(LayoutTree.java:541)
	at org.eclipse.ui.internal.LayoutTree.setBounds(LayoutTree.java:532)
	at org.eclipse.ui.internal.LayoutTreeNode.doSetBounds(LayoutTreeNode.java:536)
	at org.eclipse.ui.internal.LayoutTree.setBounds(LayoutTree.java:532)
	at org.eclipse.ui.internal.LayoutTreeNode.doSetBounds(LayoutTreeNode.java:505)
	at org.eclipse.ui.internal.LayoutTree.setBounds(LayoutTree.java:532)
	at org.eclipse.ui.internal.LayoutTreeNode.doSetBounds(LayoutTreeNode.java:505)
	at org.eclipse.ui.internal.LayoutTree.setBounds(LayoutTree.java:532)
	at org.eclipse.ui.internal.PartSashContainer.resizeSashes(PartSashContainer.java:816)
	at org.eclipse.ui.internal.PartSashContainer.setActive(PartSashContainer.java:533)
	at org.eclipse.ui.internal.PerspectiveHelper.activate(PerspectiveHelper.java:270)
	at org.eclipse.ui.internal.Perspective.onActivate(Perspective.java:980)
	at org.eclipse.ui.internal.WorkbenchPage.setPerspective(WorkbenchPage.java:3608)
	at org.eclipse.ui.internal.WorkbenchPage.busySetPerspective(WorkbenchPage.java:1043)
	at org.eclipse.ui.internal.WorkbenchPage.access$16(WorkbenchPage.java:1027)
	at org.eclipse.ui.internal.WorkbenchPage$19.run(WorkbenchPage.java:3709)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:66)
	at org.eclipse.ui.internal.WorkbenchPage.setPerspective(WorkbenchPage.java:3707)
	at org.eclipse.ui.handlers.ShowPerspectiveHandler.openPerspective(ShowPerspectiveHandler.java:146)
	at org.eclipse.ui.handlers.ShowPerspectiveHandler.openOther(ShowPerspectiveHandler.java:118)
	at org.eclipse.ui.handlers.ShowPerspectiveHandler.execute(ShowPerspectiveHandler.java:57)
	at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:304)
	at org.eclipse.core.commands.Command.executeWithChecks(Command.java:494)
	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:488)
	at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:167)
	at org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(SlaveHandlerService.java:239)
	at org.eclipse.ui.menus.CommandContributionItem.handleWidgetSelection(CommandContributionItem.java:834)
	at org.eclipse.ui.menus.CommandContributionItem.access$19(CommandContributionItem.java:820)
	at org.eclipse.ui.menus.CommandContributionItem$5.handleEvent(CommandContributionItem.java:810)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:109)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:687)
	at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:594)
	at org.eclipse.swt.widgets.Display.executeNextEvent(Display.java:1217)
	at org.eclipse.swt.widgets.Display.runPendingMessages(Display.java:1198)
	at org.eclipse.swt.widgets.Display.safeReadAndDispatch(Display.java:1181)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1173)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2733)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2694)
	at org.eclipse.ui.internal.Workbench.access$5(Workbench.java:2530)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:701)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:684)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:157)
	at de.zft.kommunikationsframework_gui_common.Init.run(Init.java:89)
	at de.zft.kommunikationsframework_gui_common.rap.EntryPoint.createUI(EntryPoint.java:28)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWTLifeCycle.java:177)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:290)
	at java.lang.Thread.run(Unknown Source)
	at org.eclipse.rap.rwt.internal.lifecycle.UIThread.run(UIThread.java:107)

!ENTRY org.eclipse.rap.ui 4 0 2017-01-30 21:28:40.338
!MESSAGE An unexpected exception was thrown.
!STACK 0
java.lang.NullPointerException
	at org.eclipse.swt.widgets.Tree.releaseChildren(Tree.java:1644)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.ui.internal.PartPane.dispose(PartPane.java:177)
	at org.eclipse.ui.internal.ViewPane.dispose(ViewPane.java:192)
	at org.eclipse.ui.internal.WorkbenchPartReference.dispose(WorkbenchPartReference.java:685)
	at org.eclipse.ui.internal.WorkbenchPage.disposePart(WorkbenchPage.java:1719)
	at org.eclipse.ui.internal.WorkbenchPage.partRemoved(WorkbenchPage.java:1711)
	at org.eclipse.ui.internal.ViewFactory.releaseView(ViewFactory.java:254)
	at org.eclipse.ui.internal.Perspective.dispose(Perspective.java:293)
	at org.eclipse.ui.internal.WorkbenchPage.dispose(WorkbenchPage.java:1791)
	at org.eclipse.ui.internal.WorkbenchWindow.closeAllPages(WorkbenchWindow.java:853)
	at org.eclipse.ui.internal.WorkbenchWindow.hardClose(WorkbenchWindow.java:1779)
	at org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:726)
	at org.eclipse.ui.internal.WorkbenchWindow.access$0(WorkbenchWindow.java:702)
	at org.eclipse.ui.internal.WorkbenchWindow$5.run(WorkbenchWindow.java:818)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:66)
	at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:816)
	at org.eclipse.jface.window.WindowManager.close(WindowManager.java:110)
	at org.eclipse.ui.internal.Workbench$14.run(Workbench.java:1151)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.Workbench.busyClose(Workbench.java:1148)
	at org.eclipse.ui.internal.Workbench.access$12(Workbench.java:1071)
	at org.eclipse.ui.internal.Workbench$21.run(Workbench.java:1337)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:66)
	at org.eclipse.ui.internal.Workbench.close(Workbench.java:1335)
	at org.eclipse.ui.internal.Workbench.close(Workbench.java:1297)
	at org.eclipse.ui.internal.Workbench$ShutdownHandler.handleEvent(Workbench.java:387)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:109)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:664)
	at org.eclipse.swt.widgets.Display.sendDisposeEvent(Display.java:755)
	at org.eclipse.swt.widgets.Display.release(Display.java:738)
	at org.eclipse.swt.graphics.Device.dispose(Device.java:279)
	at org.eclipse.rap.rwt.internal.lifecycle.UIThread.processShutdown(UIThread.java:179)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:309)
	at java.lang.Thread.run(Unknown Source)
	at org.eclipse.rap.rwt.internal.lifecycle.UIThread.run(UIThread.java:107)

!ENTRY org.eclipse.rap.ui.workbench 4 2 2017-01-30 21:28:40.348
!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.rap.ui.workbench".
!STACK 0
java.lang.NullPointerException
	at org.eclipse.swt.widgets.Tree.releaseChildren(Tree.java:1644)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Shell.releaseChildren(Shell.java:992)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.jface.window.Window.close(Window.java:353)
	at org.eclipse.jface.window.ApplicationWindow.close(ApplicationWindow.java:307)
	at org.eclipse.ui.internal.WorkbenchWindow.hardClose(WorkbenchWindow.java:1822)
	at org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:726)
	at org.eclipse.ui.internal.WorkbenchWindow.access$0(WorkbenchWindow.java:702)
	at org.eclipse.ui.internal.WorkbenchWindow$5.run(WorkbenchWindow.java:818)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:66)
	at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:816)
	at org.eclipse.jface.window.WindowManager.close(WindowManager.java:110)
	at org.eclipse.ui.internal.Workbench$14.run(Workbench.java:1151)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.Workbench.busyClose(Workbench.java:1148)
	at org.eclipse.ui.internal.Workbench.access$12(Workbench.java:1071)
	at org.eclipse.ui.internal.Workbench$21.run(Workbench.java:1337)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:66)
	at org.eclipse.ui.internal.Workbench.close(Workbench.java:1335)
	at org.eclipse.ui.internal.Workbench.close(Workbench.java:1297)
	at org.eclipse.ui.internal.Workbench$ShutdownHandler.handleEvent(Workbench.java:387)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:109)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:664)
	at org.eclipse.swt.widgets.Display.sendDisposeEvent(Display.java:755)
	at org.eclipse.swt.widgets.Display.release(Display.java:738)
	at org.eclipse.swt.graphics.Device.dispose(Device.java:279)
	at org.eclipse.rap.rwt.internal.lifecycle.UIThread.processShutdown(UIThread.java:179)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:309)
	at java.lang.Thread.run(Unknown Source)
	at org.eclipse.rap.rwt.internal.lifecycle.UIThread.run(UIThread.java:107)

!ENTRY org.eclipse.jface 4 0 2017-01-30 21:28:40.355
!MESSAGE An error has occurred when closing the workbench. See error log for more details.
!STACK 0
java.lang.NullPointerException
	at org.eclipse.swt.widgets.Tree.releaseChildren(Tree.java:1644)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Shell.releaseChildren(Shell.java:992)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.jface.window.Window.close(Window.java:353)
	at org.eclipse.jface.window.ApplicationWindow.close(ApplicationWindow.java:307)
	at org.eclipse.ui.internal.WorkbenchWindow.hardClose(WorkbenchWindow.java:1822)
	at org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:726)
	at org.eclipse.ui.internal.WorkbenchWindow.access$0(WorkbenchWindow.java:702)
	at org.eclipse.ui.internal.WorkbenchWindow$5.run(WorkbenchWindow.java:818)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:66)
	at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:816)
	at org.eclipse.jface.window.WindowManager.close(WindowManager.java:110)
	at org.eclipse.ui.internal.Workbench$14.run(Workbench.java:1151)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.Workbench.busyClose(Workbench.java:1148)
	at org.eclipse.ui.internal.Workbench.access$12(Workbench.java:1071)
	at org.eclipse.ui.internal.Workbench$21.run(Workbench.java:1337)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:66)
	at org.eclipse.ui.internal.Workbench.close(Workbench.java:1335)
	at org.eclipse.ui.internal.Workbench.close(Workbench.java:1297)
	at org.eclipse.ui.internal.Workbench$ShutdownHandler.handleEvent(Workbench.java:387)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:109)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:664)
	at org.eclipse.swt.widgets.Display.sendDisposeEvent(Display.java:755)
	at org.eclipse.swt.widgets.Display.release(Display.java:738)
	at org.eclipse.swt.graphics.Device.dispose(Device.java:279)
	at org.eclipse.rap.rwt.internal.lifecycle.UIThread.processShutdown(UIThread.java:179)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:309)
	at java.lang.Thread.run(Unknown Source)
	at org.eclipse.rap.rwt.internal.lifecycle.UIThread.run(UIThread.java:107)
2017-01-30 21:28:40.382:WARN:/:UIThread [66a25eab]: ERROR:  Exception while disposing shell: Shell {Hello RAP}
java.lang.NullPointerException
	at org.eclipse.swt.widgets.Tree.releaseChildren(Tree.java:1644)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
	at org.eclipse.swt.widgets.Shell.releaseChildren(Shell.java:992)
	at org.eclipse.swt.widgets.Widget.dispose(Widget.java:844)
	at org.eclipse.swt.widgets.Display.disposeShells(Display.java:763)
	at org.eclipse.swt.widgets.Display.release(Display.java:739)
	at org.eclipse.swt.graphics.Device.dispose(Device.java:279)
	at org.eclipse.rap.rwt.internal.lifecycle.UIThread.processShutdown(UIThread.java:179)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:309)
	at java.lang.Thread.run(Unknown Source)
	at org.eclipse.rap.rwt.internal.lifecycle.UIThread.run(UIThread.java:107)

2017-01-30 21:28:40.399:WARN:oejs.ServletHandler:qtp346235858-25: ERROR:  /gui
java.lang.NullPointerException
	at org.eclipse.swt.widgets.Composite.getChildren(Composite.java:124)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.resetTabIndices(ControlLCAUtil.java:89)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.resetTabIndices(ControlLCAUtil.java:92)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.resetTabIndices(ControlLCAUtil.java:92)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.resetTabIndices(ControlLCAUtil.java:92)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.resetTabIndices(ControlLCAUtil.java:92)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.resetTabIndices(ControlLCAUtil.java:92)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.recalculateTabIndex(ControlLCAUtil.java:83)
	at org.eclipse.rap.rwt.internal.lifecycle.ControlLCAUtil.renderChanges(ControlLCAUtil.java:52)
	at org.eclipse.swt.internal.widgets.shellkit.ShellLCA.renderChanges(ShellLCA.java:129)
	at org.eclipse.swt.internal.widgets.shellkit.ShellLCA.renderChanges(ShellLCA.java:1)
	at org.eclipse.rap.rwt.internal.lifecycle.WidgetLCA.render(WidgetLCA.java:40)
	at org.eclipse.swt.internal.widgets.displaykit.DisplayLCA$RenderVisitor.render(DisplayLCA.java:313)
	at org.eclipse.swt.internal.widgets.displaykit.DisplayLCA$RenderVisitor.visit(DisplayLCA.java:297)
	at org.eclipse.swt.internal.widgets.WidgetTreeUtil.accept(WidgetTreeUtil.java:32)
	at org.eclipse.swt.internal.widgets.displaykit.DisplayLCA.renderShells(DisplayLCA.java:175)
	at org.eclipse.swt.internal.widgets.displaykit.DisplayLCA.render(DisplayLCA.java:101)
	at org.eclipse.rap.rwt.internal.lifecycle.Render.execute(Render.java:32)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle.continueLifeCycle(RWTLifeCycle.java:155)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle.sleep(RWTLifeCycle.java:229)
	at org.eclipse.swt.widgets.Display.sleep(Display.java:1258)
	at org.eclipse.ui.application.WorkbenchAdvisor.eventLoopIdle(WorkbenchAdvisor.java:361)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2734)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2694)
	at org.eclipse.ui.internal.Workbench.access$5(Workbench.java:2530)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:701)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:684)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:157)
	at de.zft.kommunikationsframework_gui_common.Init.run(Init.java:89)
	at de.zft.kommunikationsframework_gui_common.rap.EntryPoint.createUI(EntryPoint.java:28)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWTLifeCycle.java:177)
	at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:290)
	at java.lang.Thread.run(Unknown Source)
	at org.eclipse.rap.rwt.internal.lifecycle.UIThread.run(UIThread.java:107)
Comment 7 Ivan Furnadjiev CLA 2017-01-31 02:55:13 EST
From all I read, the problem is not in the framework. I'll close it as INVALID. Please reopen if you disagree.