Description of problem:
Whenever an exception is thrown in the front end code, unrelated parts of the GUI tend to stop working (e.g. 'new' and 'import' buttons under Networks tab).
I have noticed this when pressed the 'Cancel' button on Import networks window under Networks tab. When pressed 'Cancel' (button is not responding- see BZ 1215709), after that some buttons tent to stop working, such 'new' and import' under Networks tab.
Refreshing UI fix it.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Go to Networks main tab, press 'Import' > press 'Cancel' button
2. Exit Import networks window with 'x'
3. Try to press on 'new' or 'import' buttons in the Networks tab
Buttons are not working. refreshing UI fix it.
Should work as expected.
See BZ- 1215709
kind of a duplicate of bug 1049409, I think.
Please note, this bug is still exist on 3.6.0-0.12.master.el6
Same behavior..with the same steps..
This bug is still exist on 3.6.0-0.13.master.el6 same behavior with the same steps.
Unfortunately, adding global uncaught exception handler doesn't solve the problem of the GUI left in "broken" state after a runtime exception occurs (and prevents subsequent code from being executed).
I'd suggest to implement a GUI dialog that informs the user of a runtime exception along with:
- suggestion to reload the web page
- pointing to client-side logs that can be used to report the problem
Fixing this in code is not easy as it would involve heavy defensive programming (null checks and/or try-catch blocks, etc.) applied to existing code (refactoring).
@Einav, what do you think?
After talking with Einav, we might want to notify the user of a runtime exception via PatternFly/Bootstrap alert box, shown in the top center part of the GUI:
(In reply to vszocs from comment #6)
> After talking with Einav, we might want to notify the user of a runtime
> exception via PatternFly/Bootstrap alert box, shown in the top center part
> of the GUI:
indeed - thanks, Vojtech - sorry for not updating the BZ myself :)
Note that global alert messages (as mentioned in comment #6) are currently available in WebAdmin only.
Removing link to patch "Enable contextual alerts in UserPortal" as this BZ is already ON_QA. Sorry for the noise.
(In reply to vszocs from comment #8)
> Note that global alert messages (as mentioned in comment #6) are currently
> available in WebAdmin only.
moving BZ back to POST - let's use this BZ to track the user portal change as well.
Target release should be placed once a package build is known to fix a issue. Since this bug is not modified, the target version has been reset. Please use target milestone to plan a fix for a oVirt release.
[BTW, not sure why BZ was moved to ON_QA on 2015-10-15 - relevant patches were not included in any recently-released 3.6 build]
Vojtech: once patch for user portal is merged, please move to MODIFIED.
Afterwards, I will clone the BZ for ovirt-3.6.z, and you will be able to backport the patch in the context of the cloned BZ.
rhevm-126.96.36.199-0.1.el7ev.noarch (build 4.0.0-19).
Verified according to reproducer in comment 0.
UI exception display is enabled:
# engine-config -g DisplayUncaughtUIExceptionsDisplayUncaughtUIExceptions: true version: general
Closing the Networks -> Import dialog via Close button or 'X' works. No UI exception is thrown. The GUI is still operational, menu buttons New / Import / Edit/ Remove also work as expected.
oVirt 4.0.0 has been released, closing current release.