Bug 962787

Summary: GloballyUncaughtException when changing a parameter in Connection Settings tab of a compatible group after a plugin update
Product: [Other] RHQ Project Reporter: Thomas Segismont <tsegismo>
Component: Core ServerAssignee: Thomas Segismont <tsegismo>
Status: CLOSED CURRENTRELEASE QA Contact: Mike Foley <mfoley>
Severity: high Docs Contact:
Priority: high    
Version: 4.7CC: hrupp, jshaughn
Target Milestone: ---   
Target Release: RHQ 4.8   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 962828 (view as bug list) Environment:
Last Closed: 2013-09-11 09:53:05 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 962828    

Description Thomas Segismont 2013-05-14 12:57:11 UTC
Description of problem:
The server show a GloballyUncaughtException when changing a parameter in Connection Settings tab of a compatible group after a plugin update. This only applies to new plugin-config properties introduced in existing resources after a plugin update.


Version-Release number of selected component (if applicable):
4.7

How reproducible:
Always

Steps to Reproduce:
1.Choose a resource in inventory
2.Add a new plugin-config property in the plugin descriptor file for the type of this resource
3.Rebuild the plugin and upload it
4.Go to the Connection Settings tab of the resource view and check the new parameter is present
5.Create (if needed) a compatible group for this resource
6.Change the new parameter value
  
Actual results:
The server shows a GloballyUncaughtException message and the Save button is disabled.

Expected results:
The Save button is enabled and after clicking on save, the value is updated for all members of the group.

Additional info:
I also noticed that the plugin-config property defaults are not correctly set for existing resources.
It should also be checked if resource-configuration properties have the same problem.

Comment 1 Thomas Segismont 2013-05-14 12:57:58 UTC
From the messages box in RHQ server

com.google.gwt.event.shared.UmbrellaException:2 exceptions caught: (TypeError) : Cannot set property 'errorMessage_0' of undefined; (TypeError) : Cannot set property 'stringValue' of undefined
   com.google.gwt.core.client.JavaScriptException:(TypeError) : Cannot set property 'errorMessage_0' of undefined
--- STACK TRACE FOLLOWS ---
2 exceptions caught: (TypeError) : Cannot set property 'errorMessage_0' of undefined; (TypeError) : Cannot set property 'stringValue' of undefined
   at Unknown.createStackTrace(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@63)
   at Unknown.fillInStackTrace_1(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@11)
   at Unknown.fillInStackTrace(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@56)
   at Unknown.$fillInStackTrace(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@3)
   at Unknown.$$init_0(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@3)
   at Unknown.Throwable_2(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@3)
   at Unknown.Exception_2(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@15)
   at Unknown.RuntimeException_2(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@15)
   at Unknown.UmbrellaException_2(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@22)
   at Unknown.UmbrellaException_4(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@23)
   at Unknown.$fireEvent(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@13)
   at Unknown.fireEvent_4(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@30)
   at Unknown.<anonymous>(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@11)
   at Unknown.apply(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@23)
   at Unknown.entry0(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@16)
   at Unknown.changed(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@14)
   at Unknown.isc_FormItem_handleChanged(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/sc/modules/ISC_Forms.js@22)
   at Unknown.isc_FormItem_storeValue(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/sc/modules/ISC_Forms.js@186)
   at Unknown.isc_FormItem__updateValue(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/sc/modules/ISC_Forms.js@43)
   at Unknown.isc_FormItem_updateValue(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/sc/modules/ISC_Forms.js@156)
   at Unknown.isc_FormItem__handleInput(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/sc/modules/ISC_Forms.js@170)
   at Unknown.oninput(http://localhost:7080/coregui/#ResourceGroup/10001/Inventory/ConnectionSettings@102)
Caused by: com.google.gwt.core.client.JavaScriptException: (TypeError) : Cannot set property 'errorMessage_0' of undefined
   at Unknown.$setErrorMessage_0(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@84)
   at Unknown.updatePropertySimpleValue_0(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@9)
   at Unknown.onChanged_32(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@15)
   at Unknown.$dispatch_26(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@11)
   at Unknown.dispatch_27(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@3)
   at Unknown.dispatch(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@8)
   at Unknown.dispatchEvent_0(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@11)
   at Unknown.$doFire(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@9)
   at Unknown.$fireEvent_0(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@3)
   at Unknown.$fireEvent(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@5)
   at Unknown.fireEvent_4(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@30)
   at Unknown.<anonymous>(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@11)
   at Unknown.apply(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@23)
   at Unknown.entry0(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@16)
   at Unknown.changed(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/D98AE5C30524A711A8F7D371EDF979A3.cache.html@14)
   at Unknown.isc_FormItem_handleChanged(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/sc/modules/ISC_Forms.js@22)
   at Unknown.isc_FormItem_storeValue(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/sc/modules/ISC_Forms.js@186)
   at Unknown.isc_FormItem__updateValue(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/sc/modules/ISC_Forms.js@43)
   at Unknown.isc_FormItem_updateValue(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/sc/modules/ISC_Forms.js@156)
   at Unknown.isc_FormItem__handleInput(http://localhost:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/sc/modules/ISC_Forms.js@170)
   at Unknown.oninput(http://localhost:7080/coregui/#ResourceGroup/10001/Inventory/ConnectionSettings@102)

Comment 2 Thomas Segismont 2013-05-14 14:19:38 UTC
It should be checked if group update works from the CLI. It might be a GUI caching issue.

Comment 3 Thomas Segismont 2013-05-15 09:50:07 UTC
Unfortunately, the CLI does not allow resource group plugin configuration update.

Comment 4 Thomas Segismont 2013-05-15 12:53:09 UTC
Ran CoreGUI in debug mode: the problem is in a NullPointerException in org.rhq.enterprise.gui.coregui.client.components.configuration.GroupConfigurationEditor#updatePropertySimpleValue at line 606

We assume all properties will be present, even with a null value, but during plugin update, we don't add entries in the config table for existing resources.

Comment 5 Thomas Segismont 2013-05-16 12:30:29 UTC
Fixed in master

commit f9052819e3da19359081274d62eb6b0f75dd63e2
Author: Thomas Segismont <tsegismo>
Date:   Thu May 16 14:28:01 2013 +0200

    Bug 962787 - GloballyUncaughtException when changing a parameter in Connection Settings tab of a compatible group after a plugin update

Comment 6 Heiko W. Rupp 2013-09-11 09:53:05 UTC
Bulk closing of old issues now that HRQ 4.9 is in front of the door.

If you think the issue has not been solved, then please open a new bug and mention this one in the description.