Bug 800410 - NumberFormatException in Dashboard
Summary: NumberFormatException in Dashboard
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: RHQ Project
Classification: Other
Component: Core UI
Version: 4.3
Hardware: All
OS: All
high
high
Target Milestone: ---
: RHQ 4.4.0
Assignee: Jay Shaughnessy
QA Contact: Mike Foley
URL:
Whiteboard:
Depends On:
Blocks: rhq-uxd
TreeView+ depends on / blocked
 
Reported: 2012-03-06 12:59 UTC by Heiko W. Rupp
Modified: 2013-09-01 10:11 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-09-01 10:11:25 UTC
Embargoed:


Attachments (Terms of Use)

Description Heiko W. Rupp 2012-03-06 12:59:10 UTC
Logged in with JA locale, killed the default dashboard, got a new one and added the auto discovery port let to it.
Then switched to a different locale - Dashboard does not properly display, but gives a global exception bar which yields this NFE:

Only way to get back going is to open a db-explorer and to remove the rows from rhq_dashboard_portles and rhq_dashboard

Exceção não capturada
Severidade :	
Error

Tempo :	
terça-feira, 6 de março de 2012 13h29min00s UTC+1
Detalhe :	
java.lang.NumberFormatException:For input string: "無制限"
--- STACK TRACE FOLLOWS ---
For input string: "無制限"
   at Unknown.java_lang_Exception_Exception__Ljava_lang_String_2V(Unknown Source)
   at Unknown.java_lang_RuntimeException_RuntimeException__Ljava_lang_String_2V(Unknown Source)
   at Unknown.java_lang_IllegalArgumentException_IllegalArgumentException__Ljava_lang_String_2V(Unknown Source)
   at Unknown.java_lang_NumberFormatException_NumberFormatException__Ljava_lang_String_2V(Unknown Source)
   at Unknown.java_lang_Number__1_1parseAndValidateInt__Ljava_lang_String_2IIII(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_dashboard_portlets_inventory_queue_AutodiscoveryPortlet_$configure__Lorg_rhq_enterprise_gui_coregui_client_dashboard_portlets_inventory_queue_AutodiscoveryPortlet_2Lorg_rhq_enterprise_gui_coregui_client_dashboard_PortletWindow_2Lorg_rhq_core_domain_dashboard_DashboardPortlet_2V(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_dashboard_portlets_inventory_queue_AutodiscoveryPortlet_configure__Lorg_rhq_enterprise_gui_coregui_client_dashboard_PortletWindow_2Lorg_rhq_core_domain_dashboard_DashboardPortlet_2V(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_dashboard_PortletFactory_buildPortlet__Ljava_lang_String_2Lorg_rhq_enterprise_gui_coregui_client_dashboard_PortletWindow_2Lorg_rhq_core_domain_dashboard_DashboardPortlet_2Lorg_rhq_core_domain_common_EntityContext_2Lorg_rhq_enterprise_gui_coregui_client_dashboard_Portlet_2(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_dashboard_PortletWindow_onInit__V(Unknown Source)
   at Unknown.com_smartgwt_client_widgets_BaseWidget_doInit__V(Unknown Source)
   at Unknown.com_smartgwt_client_widgets_Window_create__Lcom_google_gwt_core_client_JavaScriptObject_2(Unknown Source)
   at Unknown.com_smartgwt_client_widgets_BaseWidget_$getOrCreateJsObj__Lcom_smartgwt_client_widgets_BaseWidget_2Lcom_google_gwt_core_client_JavaScriptObject_2(Unknown Source)
   at Unknown.com_smartgwt_client_widgets_layout_Layout_$addMember__Lcom_smartgwt_client_widgets_layout_Layout_2Lcom_smartgwt_client_widgets_Canvas_2V(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_dashboard_PortalLayout_$addPortletWindow__Lorg_rhq_enterprise_gui_coregui_client_dashboard_PortalLayout_2Lorg_rhq_enterprise_gui_coregui_client_dashboard_PortletWindow_2ILorg_rhq_enterprise_gui_coregui_client_dashboard_PortalColumn_2(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_dashboard_DashboardView_$loadPortletWindows__Lorg_rhq_enterprise_gui_coregui_client_dashboard_DashboardView_2V(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_dashboard_DashboardView_$buildPortlets__Lorg_rhq_enterprise_gui_coregui_client_dashboard_DashboardView_2V(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_dashboard_DashboardView_onInit__V(Unknown Source)
   at Unknown.com_smartgwt_client_widgets_BaseWidget_doInit__V(Unknown Source)

Comment 2 Jay Shaughnessy 2012-03-15 21:11:48 UTC
I agree with Ian, we certainly should not be storing a localized value
in the portlet configuration. I don't think that was the intent, rather
it was probably just an accidental application of I18N to the special
string value being used.

Anyway, using -1 would be better.  This affects the following portlets:

Autodiscovery
RecentlyAddedResources
OperationSchedule
ProblemResources

Since it's quite difficult to update Configurations via a db upgrade
step, instead we'll just start using a proper value (-1) going forward,
and protect against the problem.

Comment 3 Jay Shaughnessy 2012-03-16 18:00:59 UTC
master commit 76f5bd8075b6a8d13757bcd86daca99d680239e1

Fix issues in four portlets that were storing a localized string as
a configuration setting value.  This caused issues if the locale was
changed after the setting was stored.  Now stores non-localized
values and also handles the legacy values when encountered (so, no
db upgrade step required).


Test Notes:
Note that this affects four different portlets, three of which are
non-default portlets that need to be added manually to your global
dashboard.

Comment 4 Heiko W. Rupp 2013-09-01 10:11:25 UTC
Bulk closing of items that are on_qa and in old RHQ releases, which are out for a long time and where the issue has not been re-opened since.


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