The ISV has run into a problem that we have been unable to resolve and
believe it may be in the JRE itself. We have run test cases against
JRE 1.3.1.x and the problem does not occur, but when we run
against JRE 1.4.x, it happens every time.
The application test environment consists of:
- The 3D viewer (green background w/ trihedron in it), a native widge.
- A tree view, which reflect the contents of the 3D viewer, a native widget.
- Swing based toolbars and file load panel.
- AWT buttons and text fields.
Here is the scenario.
We bring up our applications which contain a mixture of native windows,
Swing toolbars, and AWT objects. We are able to bring up a right click
context menu from one of the native windows (the tree view) and make a
selection which brings up one of the native dialogs. When we close out the
dialog, all swing objects on the application are essentially disabled, i.e.
they do not recognize any mouse events.
1. We load a file into the 3D viewer.
2. We then are able to add markups to the viewer using the Markup toolbar.
Adding these markups causes an entry to be added to the tree view to group
the markups, called "Markup Layer" with a sub entry of "Layer1".
3. We then go into the tree view and right click on the markup layer
(Layer1) itself to bring up one of the native context menus. One of the
entries is "Delete". We select delete, which brings up one of the native
dialogs, which prompts whether or not you want to save out this layer.
After electing to save or not, the dialog is closed. At this point, none of
the swing components on the application will accept any kind of mouse event
(toolbars and our file open panel). They are completely unusable. At this
point the AWT components are still usable. The only way to resolve the
problem with the swing components is to right click in our tree view or
viewer to bring up the context menu again.
We have investigated both Native and Java solutions for the problem and have
not been able to determine what is actually happening to the swing
The problem occurs on Solaris 8, but it does not occur when running under Windows.