"Change Icon" In Topology Map Fails

Description

Right mouse on a node  and select "Change Icon"  generates a pop-up box in bottom/right of window "An Unexpected Exception Occurred: see karaf.log"

I don't find anything while performing tail -f karaf.log and reproducing the error in the Web UI

Environment

OpenNMS Version: 22.0.0 Java Version: 1.8.0_144 Oracle Corporation Java Virtual Machine: 25.144-b01 Oracle Corporation Operating System: Linux 3.10.0-693.5.2.el7.x86_64 (amd64) OSGi Container: Apache Karaf 4.1.5 Servlet Container: jetty/9.4.2.v20170220 (Servlet Spec 3.1)

Acceptance / Success Criteria

None

Attachments

3

Lucidchart Diagrams

Activity

Show:

Markus von Rüden October 23, 2018 at 11:43 AM

PR which fixes the flapping test: https://github.com/OpenNMS/opennms/pull/2181

Jesse White October 5, 2018 at 4:35 PM
Edited

Re-opening this one, test the is currently failing in develop - I've disabled it with https://github.com/OpenNMS/opennms/commit/b84cafe6ce956b092d58af7371ecdf2e06b64a83.

We also need to backport this to foundation-2018 if applicable.

Patrick Schweizer September 12, 2018 at 6:21 PM

It looks like the problem is caused by multiple definitions of the class org.json.JSONArray.
org.json.JSONArray is defined in the following jars:

Excluding all other versions from module vaadin seems to work:
PR: https://github.com/OpenNMS/opennms/pull/2148

Tobias S August 23, 2018 at 1:52 PM

Same problem for me. Changing the icon worked in Version 21.0.4. Version 22.0.3 produces the same error for me. The important part in the log is imho:

Caused by: java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "org.opennms.features.topology.app.internal.ui.icons.IconSelectionComponent$$Lambda$663/1566691508.call(Lorg/json/JSONArray;)V" the class loader (instance of org/apache/felix/framework/BundleWiringImpl$BundleClassLoader) of the current class, org/opennms/features/topology/app/internal/ui/icons/IconSelectionComponent$$Lambda$663, and the class loader (instance of org/apache/felix/framework/BundleWiringImpl$BundleClassLoader) for interface com/vaadin/ui/JavaScriptFunction have different Class objects for the type org/json/JSONArray used in the signature
{{ at sun.misc.Unsafe.defineAnonymousClass(Native Method) ~[?:?]}}

Michel P. van Dam August 20, 2018 at 1:06 PM

The problem is not solved in the latest release 22.0.3

Fixed

Details

Assignee

Reporter

Labels

Components

Sprint

Fix versions

Affects versions

Priority

PagerDuty

Created June 12, 2018 at 4:02 PM
Updated June 3, 2019 at 7:08 AM
Resolved October 23, 2018 at 11:43 AM
Loading...