Perspective "Channel is not Open", "View config is undefined"

Hello,

I’m using Ignition 8.0.12, when I try to open any view it remain stuck at “syncronizing”.

In the wrapper.log I get this:

INFO   | jvm 1    | 2021/04/29 17:44:18 | I [p.DesignSession               ] [15:44:18]: Unable to gather info on modules installed. protocol=session-init, session-project=Barcode
INFO   | jvm 1    | 2021/04/29 17:44:18 | java.io.IOException: Channel is not open.
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at com.inductiveautomation.perspective.gateway.model.PageModel.send(PageModel.java:259)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at com.inductiveautomation.perspective.gateway.model.PageModel.updateModulesInfo(PageModel.java:527)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at com.inductiveautomation.perspective.gateway.session.PerspectiveSessionCollection$Handlers.sessionInit(PerspectiveSessionCollection.java:489)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at com.inductiveautomation.perspective.gateway.session.PerspectiveSessionCollection$Handlers.lambda$new$0(PerspectiveSessionCollection.java:457)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at com.inductiveautomation.perspective.gateway.session.MessageProtocolDispatcher$MessageHandler.handleMessage(MessageProtocolDispatcher.java:124)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at com.inductiveautomation.perspective.gateway.session.MessageProtocolDispatcher.receive(MessageProtocolDispatcher.java:37)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at com.inductiveautomation.perspective.gateway.session.PerspectiveSessionCollection.receive(PerspectiveSessionCollection.java:413)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at com.inductiveautomation.perspective.gateway.comm.WebSocketChannel.onMessage(WebSocketChannel.java:110)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at jdk.internal.reflect.GeneratedMethodAccessor61.invoke(Unknown Source)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at java.base/java.lang.reflect.Method.invoke(Unknown Source)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at org.eclipse.jetty.websocket.common.events.annotated.CallableMethod.call(CallableMethod.java:70)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at org.eclipse.jetty.websocket.common.events.annotated.OptionalSessionCallableMethod.call(OptionalSessionCallableMethod.java:68)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at org.eclipse.jetty.websocket.common.events.JettyAnnotatedEventDriver$2.run(JettyAnnotatedEventDriver.java:227)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)
INFO   | jvm 1    | 2021/04/29 17:44:18 | 	at java.base/java.lang.Thread.run(Unknown Source)

If I close the stucked View I get this error in the designer:

java.util.concurrent.ExecutionException: java.lang.Exception: Unable to get the view config: View config is undefined.
	at java.base/java.util.concurrent.CompletableFuture.reportGet(Unknown Source)
	at java.base/java.util.concurrent.CompletableFuture.get(Unknown Source)
	at com.inductiveautomation.perspective.designer.workspace.ViewResourceEditor.getObjectForSave(ViewResourceEditor.java:383)
	at com.inductiveautomation.perspective.designer.workspace.ViewResourceEditor.getObjectForSave(ViewResourceEditor.java:60)
	at com.inductiveautomation.ignition.designer.tabbedworkspace.ResourceEditor.commit(ResourceEditor.java:160)
	at com.inductiveautomation.ignition.designer.tabbedworkspace.TabbedResourceWorkspace.close(TabbedResourceWorkspace.java:265)
	at com.inductiveautomation.ignition.designer.tabbedworkspace.TabbedResourceWorkspace.close(TabbedResourceWorkspace.java:252)
	at com.inductiveautomation.ignition.designer.tabbedworkspace.TabbedResourceWorkspace$1.actionPerformed(TabbedResourceWorkspace.java:78)
	at com.jidesoft.plaf.basic.BasicJideTabbedPaneUI$CloseTabAction.actionPerformed(Unknown Source)
	at java.desktop/javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at java.desktop/javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
	at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
	at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
	at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.desktop/java.awt.Component.processEvent(Unknown Source)
	at java.desktop/java.awt.Container.processEvent(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.Exception: Unable to get the view config: View config is undefined.
	at com.inductiveautomation.perspective.designer.workspace.JavaJsBridge.onSaveError(JavaJsBridge.java:112)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.base/java.lang.reflect.Method.invoke(Unknown Source)
	at com.teamdev.jxbrowser.chromium.JSContext.a(SourceFile:1640)
	at com.teamdev.jxbrowser.chromium.JSContext$a.onMessageReceived(SourceFile:713)
	at com.teamdev.jxbrowser.chromium.internal.ipc.q.a(SourceFile:1085)
	at com.teamdev.jxbrowser.chromium.internal.ipc.r.run(SourceFile:69)
	at com.teamdev.jxbrowser.chromium.internal.t.run(SourceFile:79)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.base/java.lang.Thread.run(Unknown Source)

Ignition v8.0.12 (b2020042115)
Java: Azul Systems, Inc. 11.0.6

The only solution I’ve found is to completely close the designer, open it again and open the views in the first couple of minutes, which is very inconvenient.
Considering that they open at the start, it doesn’t seems a problem related to the view.

The Ignition Gateway is running on a Windows Server 2016, but it does the same on Windows 10.

Any solution?

Hi @Federick732000, I remember having similar issues. Although, this was often related to opening the views too soon after the designer started. I had to use the same method to fix it as you.

I did find the later versions of 8.0.x to be more stable. I’m using 8.1.4 now, and I haven’t had any of these type of issues.

Do you have the option to update?

2 Likes

Hi @matthew.ayre, thank you for answering.

I’ll update Ignition in these days, I will write back as soon as I manage to try the new version.

EDIT: I’ve updated Ignition to 8.1.5, cleared the cache just to be sure, and now it seems to work!

Thank you very much

1 Like

I had the same problem, but after I cleared cache on Server PC, the view is opening now.
I have Windows Server 2016 (Ignition v8.1.12), so my steps were:

  1. Close Chrome (Firefox, Explorer, M.Edge etc) browser
  2. Open CMD as Administrator
  3. Type ipconfig/flushdns

so that’s it) I event did not need to upgrade Ignition.
Maybe it will help someone who will face the same problem in the future :heart_eyes:

2 Likes