Notifications

72 views

Description

The interactive Analysis page for a table does not load the available Interactive Filters. A "NullPointerException" error is being issued:

2019-11-15 07:06:20 (593) Default-thread-12 CD3DA80FDBC94010F0C98C884B961947 txid=128e6c0fdb0d SEVERE *** ERROR *** java.lang.NullPointerException
com.glide.rest.util.RESTRuntimeException: java.lang.NullPointerException

Steps to Reproduce

  1. Create a new Interactive Filter on the [cmdb_ci_business_app] table.
  2. Go to the [cmdb_ci_business_app] list view, right-click on the icon left of any column and select the option "Launch Interactive Analysis".
  3. Make sure the Interactive Filter is displayed in the "Filter" section on the right side of the Interactive Analysis page for the [cmdb_ci_business_app] table.
  4. Install the "Performance Analytics - Content Pack - Application Portfolio Management" plugin [This is the fastest way to create the invalid references] .
  5. Launch the Interactive Analysis again for the [cmdb_ci_business_app] table.
  6. Observe there is a "NullPointerException" error in logs and Filters are no longer available on the Interactive Analysis page:

    2019-11-15 07:06:20 (593) Default-thread-12 CD3DA80FDBC94010F0C98C884B961947 txid=128e6c0fdb0d SEVERE *** ERROR *** java.lang.NullPointerException
    com.glide.rest.util.RESTRuntimeException: java.lang.NullPointerException

    Note: This issue can occur even if this "Performance Analytics - Content Pack - Application Portfolio Management" is not active. There can still be some invalid references that cause the same issue.

Workaround

1. Execute the following script from Scripts - Background to find the invalid references:

function checkReference() {var gr = new GlideRecord('sys_ui_hp_reference');
gr.query();
while (gr.next()) {
var td = GlideTableDescriptor.get(gr.getValue('reference_table'));
var ce = new GlideCompositeElement(gr.getValue('reference_field'), td);
if (!ce.isValid()) {
gs.print('sys_id: ' + gr.getValue('sys_id'));
gs.print('Reference_table : ' + gr.getValue('reference_table'));
gs.print('Reference_field: ' + gr.getValue('reference_field'));
gs.print('****************************');
}
}
}

checkReference();

2. The script output will be the something like below:

*** Script: sys_id: 3b0801574f852200720674828110c76d
*** Script: Reference_table : apm_app_indicator_score
*** Script: Reference_field: cmdb_ci_business_app.apm_business_process

sys_id: sys_id of the "sys_ui_hp_reference" (Interactive Filter References) record
Reference_table : Reference table selected on the "Interactive Filter References" record
Reference_field: Reference field selected on the "Interactive Filter References" record

3. The workaround is either deleting those records or selecting a valid reference field. Instead of deleting them you can select a table/field you would like to utilize this Reference Interactive filter.

4. Updating or deleting the OOB records will create a Customer Update record which will track the change as customization. You can find the customizations using the link below. Please keep in mind the link will show all the customization for the Interactive Filter References records. You can filter them with the sys_ids from the script results above. The name field in "sys_update_xml" table will look like below.

Name: sys_ui_hp_reference_3b0801574f852200720674828110c76d
Link: https://<INSTANCE_NAME>.service-now.com/sys_update_xml_list.do?sysparm_query=nameSTARTSWITHsys_ui_hp_reference&sysparm_view=


Related Problem: PRB1373924

Seen In

New York Patch 1 Hot Fix 1
SR - IRM - GRC Profiles - Madrid 2019 Q2
SR - IRM - GRC Workbench - New York 2019 Q3
SR - IRM - PA Premium Integration - New York 2019 Q3
SR - IRM - Policy and Compliance - Madrid 2019 Q2
SR - IRM - Risk Management - New York 2019 Q3

Intended Fix Version

Paris

Safe Harbor Statement

This "Intended Fix Version" information is meant to outline ServiceNow's general product direction and should not be relied upon in making a purchasing decision. The information provided here is for information purposes only and may not be incorporated into any contract. It is not a commitment, promise, or legal obligation to deliver any material, code, or functionality. The development, release, and timing of any features or functionality described for our products remains at ServiceNow's sole discretion.

Associated Community Threads

There is no data to report.

Article Information

Last Updated:2019-11-26 23:52:58
Published:2019-11-20