CControl.load() did not return

Hi,

my Application load and save the layout with
cControl.readXML(file);
cControl.load(layoutName);

cControl.writeXML(file);
cControl.save(layoutName);

Somtimes the load function did not return… so the whole application hang up.
When i debug it, the EDT is here:

PnlSymbolsMenu(Component).removeFocusListener(FocusListener) line: not available
DefaultFocusStrategy$Tracker(FocusTracker).remove(Component) line: 118
DefaultFocusStrategy$Tracker(FocusTracker).remove(Component) line: 123
DefaultFocusStrategy$Tracker(FocusTracker).remove(Component) line: 123
DefaultFocusStrategy$Tracker(FocusTracker).remove(Component) line: 123
FocusTracker$2.componentRemoved(ContainerEvent) line: 60
SplitDockStation$Content(Container).processContainerEvent(ContainerEvent) line: not available
SplitDockStation$Content(Container).processEvent(AWTEvent) line: not available
SplitDockStation$Content(Component).dispatchEventImpl(AWTEvent) line: not available
SplitDockStation$Content(Container).dispatchEventImpl(AWTEvent) line: not available
SplitDockStation$Content(Component).dispatchEvent(AWTEvent) line: not available
SplitDockStation$Content(Container).remove(int) line: not available
SplitDockStation$Content(Container).remove(Component) line: not available
CSplitDockStation(SplitDockStation).removeDisplayer(int, DockHierarchyLock$Token) line: 3066
CSplitDockStation(SplitDockStation).removeHandle(StationChildHandle, DockHierarchyLock$Token) line: 3031
SplitDockStation.access$1700(SplitDockStation, StationChildHandle, DockHierarchyLock$Token) line: 184
SplitDockStation$Access.removeHandle(StationChildHandle, DockHierarchyLock$Token) line: 3341
Leaf.setDockable(Dockable, DockHierarchyLock$Token, boolean, boolean) line: 181
CSplitDockStation(SplitDockStation).removeDockable(Dockable) line: 2960
CSplitDockStation(SplitDockStation).drag(Dockable) line: 2598
CDockFrontend(DockFrontend).clean(DockStation, DockSituationIgnore) line: 1849
CDockFrontend(DockFrontend).clean(DockSituationIgnore) line: 1826
DockFrontend$Internals.clean(DockSituationIgnore) line: 2419
CLayoutChangeStrategy(DefaultLayoutChangeStrategy).setLayout(DockFrontendInternals, Setting, boolean) line: 94
CDockFrontend(DockFrontend).setSetting(Setting, boolean) line: 1582
CDockFrontend.access$001(CDockFrontend, Setting, boolean) line: 48
CDockFrontend$1.run() line: 162
CLocationModeManager(ModeManager<H,M>).runTransaction(Runnable, boolean) line: 512
CLocationModeManager(LocationModeManager).runLayoutTransaction(Runnable) line: 497
CDockFrontend.setSetting(Setting, boolean) line: 160
CDockFrontend(DockFrontend).load(String) line: 1517
CControl.load(String) line: 2592

PnlSymbolsMenu extends a JPanel and removeFocusListener() is the original one.
Have anyone a solution for that?

… I think i have found the Problem.
The Application use Multithreading and one Thread first start the loading of the layout in the EDT and after that change same GUI elements at the PnlSymbolMenu.
Now i add the GUI changes also to the EDT and it seems to work…

The framework does not work well with multi-threading. The best thing you can do is to make sure that only the EDT access the framework.