Bug 781602 - Tab order of managed resource changes
Summary: Tab order of managed resource changes
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: RHQ Project
Classification: Other
Component: Core UI
Version: 4.3
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: ---
: ---
Assignee: John Sanda
QA Contact: Mike Foley
URL:
Whiteboard:
Depends On:
Blocks: rhq-uxd
TreeView+ depends on / blocked
 
Reported: 2012-01-13 20:24 UTC by Alan Santos
Modified: 2015-02-06 01:19 UTC (History)
3 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2013-09-01 19:21:29 UTC
Embargoed:


Attachments (Terms of Use)

Description Alan Santos 2012-01-13 20:24:04 UTC
Description of problem:
Selecting different resources causes tabs to reorder when the original resource is re-selected.


How reproducible:
always


Steps to Reproduce:
1) Open  http://ec2-184-73-101-114.compute-1.amazonaws.com:7080/coregui/#Resource/10651
or any other suitable platform resource with AS 5 plugins (probably many other types suffer from this)

2) expand AS 5 folder

3) select eap instance  - note tab order - specifically 'content' and events, operations, drift

4) select bundle handler - note tab order and the fact that events, operations and drift are not there.

5) reselect eap - note tab order and the fact that events, operations and drift are back, but after content.

  
Actual results:
Tab order changes


Expected results:
Tab order remains constant and events, order, drift are before content.


Additional info:
I believe this behavior has happened with other types of resources..

Comment 1 John Sanda 2012-02-17 21:23:14 UTC
I am seeing different behavior but that may be due to the upgraded GWT and SmartGWT libraries. When I select the bundler handler, I get the following exception:

com.google.gwt.core.client.JavaScriptException:(TypeError): _9 is undefined
--- STACK TRACE FOLLOWS ---
(TypeError): _9 is undefined
   at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:248)
   at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
   at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:561)
   at com.google.gwt.dev.shell.ModuleSpace.invokeNativeVoid(ModuleSpace.java:289)
   at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeVoid(JavaScriptHost.java:107)
   at com.smartgwt.client.widgets.tab.TabSet.removeTab(TabSet.java)
   at org.rhq.enterprise.gui.coregui.client.components.tab.TwoLevelTabSet.setTabHidden(TwoLevelTabSet.java:93)
   at org.rhq.enterprise.gui.coregui.client.inventory.common.detail.AbstractTwoLevelTabSetView.updateTab(AbstractTwoLevelTabSetView.java:121)
   at org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.ResourceDetailView.updateDriftTabContent(ResourceDetailView.java:525)
   at org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.ResourceDetailView.updateTabContent(ResourceDetailView.java:299)
   at org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.ResourceDetailView$28.onTypesLoaded(ResourceDetailView.java:653)
   at org.rhq.enterprise.gui.coregui.client.inventory.resource.type.ResourceTypeRepository$3.onTypesLoaded(ResourceTypeRepository.java:197)
   at org.rhq.enterprise.gui.coregui.client.inventory.resource.type.ResourceTypeRepository.getResourceTypes(ResourceTypeRepository.java:251)
   at org.rhq.enterprise.gui.coregui.client.inventory.resource.type.ResourceTypeRepository.getResourceTypes(ResourceTypeRepository.java:194)
   at org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.ResourceDetailView.loadResourceType(ResourceDetailView.java:640)
   at org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.ResourceDetailView.access$24(ResourceDetailView.java:638)
   at org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.ResourceDetailView$27.onSuccess(ResourceDetailView.java:616)
   at org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.ResourceDetailView$27.onSuccess(ResourceDetailView.java:1)
   at com.google.gwt.user.client.rpc.impl.RequestCallbackAdapter.onResponseReceived(RequestCallbackAdapter.java:232)
   at org.rhq.enterprise.gui.coregui.client.util.rpc.TrackingRequestCallback.onResponseReceived(TrackingRequestCallback.java:90)
   at com.google.gwt.http.client.Request.fireOnResponseReceived(Request.java:287)
   at com.google.gwt.http.client.RequestBuilder$1.onReadyStateChange(RequestBuilder.java:395)
....


Then when I go back and click on my JBoss server, I no longer see the drift or content tabs. The other, visible tabs are however in the same order as they were previously. All of the tabs, including drift and content, due render in the original order after a page refresh.

Comment 2 John Sanda 2012-02-17 21:58:22 UTC
I also want to point out that I do not get the above exception consistently/

Comment 3 John Sanda 2012-02-21 19:18:12 UTC
For this bug, comment 1 can be disregarded. The exception is a regression introduced from the changes in bug 772259. I have pushed a fix for this.

master commit hash: 4ad367088998fcb67b0a058c4fb8bd5ed4133838

For testing it is important to know the fixed order of tabs which is as follows,

1. Summary
2. Inventory
3. Alerts
4. Monitoring
5. Events
6. Operations
7. Configuration
8. Drift
9. Content

Note that regardless of which tabs are visible, relative order should be preserved. For example, suppose I click on an agent in the inventory tree. The Drift and Content tabs should not be visible, and the remaining tabs should appear as Summary, Inventory, Alerts, Monitoring, Events, Operations, Configuration.

Now suppose I click on the Agent Plugin Container resource which is a child service of the agent. The Events, Configuration, Drift, and Content tabs should not be visible. The remaining tabs should appear in the following order - Summary, Inventory, Alerts, Monitoring, Operations. Notice that the order of tabs relative to one another is the same.

As a last example, if I click on a JBossAS Server, the Configuration tab should not be visible. The remaining tabs should appear in the following order - Summary, Inventory, Alerts, Monitoring, Events, Operations, Drift, Content. Again, notice for instance that Operations appears before Drift which comes after Configuration.

Comment 4 Heiko W. Rupp 2013-09-01 19:21:29 UTC
Bulk closing of BZs that have no target version set, but which are ON_QA for more than a year and thus are in production for a long time.


Note You need to log in before you can comment on or make changes to this bug.