[SOLVED] Networks Maps broke

Started by alexrhyshurn, December 26, 2018, 08:13:39 PM

Previous topic - Next topic

alexrhyshurn

Hi All,

I was happily working on my network map, and then I added a new DCI COntainer with two DCIs and it worked fine. I went back to add some text to the Format String, and now the Map is broken with the error below.

What happened?

QuoteCould not create the view: 34

Quotejava.lang.ArrayIndexOutOfBoundsException: 34
   at org.netxms.client.datacollection.DataFormatter.format(DataFormatter.java:80)
   at org.netxms.client.datacollection.DciValue.format(DciValue.java:110)
   at org.netxms.ui.eclipse.networkmaps.views.helpers.LinkDciValueProvider.getDciDataAsString(LinkDciValueProvider.java:268)
   at org.netxms.ui.eclipse.networkmaps.views.helpers.DCIContainerFigure.<init>(DCIContainerFigure.java:56)
   at org.netxms.ui.eclipse.networkmaps.views.helpers.MapLabelProvider.getFigure(MapLabelProvider.java:292)
   at org.netxms.ui.eclipse.networkmaps.views.helpers.ExtendedGraphViewer.inputChanged(ExtendedGraphViewer.java:280)
   at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:280)
   at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1690)
   at org.netxms.ui.eclipse.networkmaps.views.AbstractNetworkMapView.refreshMap(AbstractNetworkMapView.java:419)
   at org.netxms.ui.eclipse.networkmaps.views.AbstractNetworkMapView.createPartControl(AbstractNetworkMapView.java:390)
   at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:386)
   at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:240)
   at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)
   at org.eclipse.ui.internal.Perspective.showView(Perspective.java:2245)
   at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1154)
   at org.eclipse.ui.internal.WorkbenchPage$20.run(WorkbenchPage.java:3934)
   at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
   at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3931)
   at org.netxms.ui.eclipse.networkmaps.NetworkMapOpenHandler.openObject(NetworkMapOpenHandler.java:33)
   at org.netxms.ui.eclipse.objectbrowser.api.ObjectOpenHandlerRegistry.callOpenObjectHandler(ObjectOpenHandlerRegistry.java:58)
   at org.netxms.ui.eclipse.objectbrowser.views.ObjectBrowser$1.openObject(ObjectBrowser.java:229)
   at org.netxms.ui.eclipse.objectbrowser.widgets.ObjectTree.openObject(ObjectTree.java:700)
   at org.netxms.ui.eclipse.objectbrowser.widgets.ObjectTree.access$4(ObjectTree.java:697)
   at org.netxms.ui.eclipse.objectbrowser.widgets.ObjectTree$4.doubleClick(ObjectTree.java:168)
   at org.eclipse.jface.viewers.StructuredViewer$1.run(StructuredViewer.java:845)
   at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
   at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
   at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
   at org.eclipse.jface.viewers.StructuredViewer.fireDoubleClick(StructuredViewer.java:843)
   at org.eclipse.jface.viewers.AbstractTreeViewer.handleDoubleSelect(AbstractTreeViewer.java:1477)
   at org.eclipse.jface.viewers.StructuredViewer$4.widgetDefaultSelected(StructuredViewer.java:1246)
   at org.eclipse.jface.util.OpenStrategy.fireDefaultSelectionEvent(OpenStrategy.java:249)
   at org.eclipse.jface.util.OpenStrategy.access$0(OpenStrategy.java:246)
   at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:307)
   at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
   at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1276)
   at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3562)
   at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3186)
   at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701)
   at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)
   at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
   at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
   at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
   at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
   at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
   at org.netxms.ui.eclipse.console.Application.start(Application.java:37)
   at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
   at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
   at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
   at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
   at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   at java.lang.reflect.Method.invoke(Unknown Source)
   at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
   at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
   at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
   at org.eclipse.equinox.launcher.Main.main(Main.java:1414)

alexrhyshurn

I think I have found the cause.

When adding descriptions to the format string, I have some data that is a percentage, so I added:

Total UPS Power: %s %

Hoping to see:

Total UPS Power: 47 %

The second percentage mark causes the whole map to break, and I have to delete it and make a new one.

Can anybody guide me on how to include a second % sign?

Thanks,

Alex

Victor Kirhenshtein

Hi,

if you want % sign to be displayed, prepend it with another %, like

Total UPS Power: %s %%

Best regards,
Victor

alexrhyshurn