Name: nt126004 Date: 04/25/2003
FULL PRODUCT VERSION :
java version "1.4.1_02"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1_02-b06)
Java HotSpot(TM) Client VM (build 1.4.1_02-b06, mixed mode)
FULL OS VERSION :
A DESCRIPTION OF THE PROBLEM :
The Security Advisory boxes disappears "behind the scenes", when switching focus to another application and then reselecting the Web Start-application via the taskbar. The Security Advisory cannot be retrieved via the taskbar (without closing or minimizing all other windows), and the ALT+TAB selection is not universally known. I'm not entirely certain you'll view this as a bug, but the not-so-initiated user might click ever so frantically on the inactive window, and then choose to reboot, which is why the courtesy of always showing them the active window will, to some extent, expand the usage of the application (or Web Start).
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
The window in question is the Security Advisory itself, the one asking the user to grant the program access to the system; it goes for any Security Advisory displayed by
any service obtained via javax.jnlp.ServiceManager. Now that you mention it, however, I discover that the same flawed modality is the case in the subseqent dialogs (for
instance the openFileDialog(...)-method of a FileOpenService-object). I assume that this flawed modality can be experienced with any window lanched by one of the
Services in the javax.jnlp-API.
The problem was discovered by accident (not by me, in fact, as I always use ALT+TAB to focus open applications). It does NOT occur when using ALT+TAB (see 2.
below, though) - only when focusing the application via the taskbar. Here is a more elaborate description:
Start any unsigned Web Start application that requires access "outside the sandbox", for example your own
http://java.sun.com/products/javawebstart/apps/notepad.jnlp and try opening a file. The Security Advisory appears; leave it there a while without making a choice, open a
few other applications (a few browser windows will do) and make each window fill the entire screen (to illustrate my point). Now you have some windows open on top op
the Web Start application (still with a Security Advisory awaiting answer), and you want to return to the Web Start application without closing the other windows. In
Windows, this can be done in two (easy) ways:
1.by selecting the application in the Windows-taskbar (at the bottom of the screen). This approach, however, will bring the main-application into view, but leaves
the Security Advisory behind, and you now have an inactive window, as it's suspended until the openFileDialog returns, and it, in turn, awaits input it cannot get,
as the Security Advisory is lost in the background. As mentioned above, this is true not only of the Security Advisory, but also of the openFileDialog displayed
after accepting the system access.
2.by using ALT+TAB till the desired application is selected. Using this approach will correctly display the Security Advisory. One detail, however, is that the
main-application is left in the background, and does not appear until the openFileDialog(...)-call returns. This could - potentially - be critical in case you run two
Web Start applications simultaniously, leave both at a Security Advisory while searching some info on the web finding that only one of the Web Start applications
should be granted the access it requests; now, which Security Advisory belong to which application???
EXPECTED VERSUS ACTUAL BEHAVIOR :
One would expect the Security Advisory to be in front of the application at all times.
A bit redundant, but ok. The Security Advisory could not be called to focus using the Windows taskbar.
This bug can be reproduced always.
(Review ID: 184684)