# Error : java.lang.Exception: Unable to get the view config: View config is undefined

**URL:** <https://forum.inductiveautomation.com/t/error-java-lang-exception-unable-to-get-the-view-config-view-config-is-undefined/73124>\
**Category:** Ignition\
**Tags:** perspective\
**Created:** [May 1, 2023, 10:45pm UTC](https://forum.inductiveautomation.com/t/error-java-lang-exception-unable-to-get-the-view-config-view-config-is-undefined/73124 "2023-05-01T22:45:29Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Moath\_Dardas](https://avatars.discourse-cdn.com/v4/letter/m/eb9ed0/32.png) [@Moath\_Dardas](https://forum.inductiveautomation.com/u/Moath_Dardas)\
**Post date:** [May 1, 2023, 10:45pm UTC](https://forum.inductiveautomation.com/t/error-java-lang-exception-unable-to-get-the-view-config-view-config-is-undefined/73124/1 "2023-05-01T22:45:29Z")

</div>

Hi,

I have a projects with multiple views. Each time I try to open any view I get the error message below:

Any thoughts!

Appreciate everybody help.

![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/4/f/4fd1208b8ce646963bd84b84505661e8437eb466.png)

Error Message: java.lang.Exception: Unable to get the view config: View config is undefined.

The full error details are below:

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:491)  
at com.inductiveautomation.perspective.designer.workspace.ViewResourceEditor.getObjectForSave(ViewResourceEditor.java:68)  
at com.inductiveautomation.ignition.designer.tabbedworkspace.ResourceEditor.commit(ResourceEditor.java:166)  
at com.inductiveautomation.perspective.designer.workspace.ViewResourceEditor.notifyDeactivated(ViewResourceEditor.java:598)  
at com.inductiveautomation.perspective.designer.workspace.PerspectiveWorkspaceListener.editorSelected(PerspectiveWorkspaceListener.java:80)  
at com.inductiveautomation.ignition.designer.tabbedworkspace.TabbedResourceWorkspace$3.stateChanged(TabbedResourceWorkspace.java:116)  
at java.desktop/javax.swing.DefaultSingleSelectionModel.fireStateChanged(Unknown Source)  
at com.jidesoft.swing.JideTabbedPane$IgnoreableSingleSelectionModel.fireStateChanged(Unknown Source)  
at java.desktop/javax.swing.DefaultSingleSelectionModel.setSelectedIndex(Unknown Source)  
at java.desktop/javax.swing.JTabbedPane.setSelectedIndexImpl(Unknown Source)  
at java.desktop/javax.swing.JTabbedPane.setSelectedIndex(Unknown Source)  
at com.jidesoft.swing.JideTabbedPane.setSelectedIndex(Unknown Source)  
at java.desktop/javax.swing.JTabbedPane.setSelectedComponent(Unknown Source)  
at com.inductiveautomation.ignition.designer.tabbedworkspace.TabbedResourceWorkspace.open(TabbedResourceWorkspace.java:254)  
at com.inductiveautomation.ignition.designer.tabbedworkspace.TabbedResourceWorkspace.open(TabbedResourceWorkspace.java:244)  
at com.inductiveautomation.perspective.designer.workspace.nav.ViewNode$DelayedOnSelect.run(ViewNode.java:535)  
at com.inductiveautomation.ignition.client.util.EDTUtil$ProcessQueue.run(EDTUtil.java:126)  
at java.desktop/java.awt.event.InvocationEvent.dispatch(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.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:124)  
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.frame.internal.FrameImpl.invokeMethod(FrameImpl.java:785)  
at com.teamdev.jxbrowser.frame.internal.FrameImpl.processCallback(FrameImpl.java:228)  
at com.teamdev.jxbrowser.internal.rpc.stream.CallbackStream.process(CallbackStream.java:178)  
at com.teamdev.jxbrowser.internal.rpc.stream.Stream$StreamObserver.lambda$onNext$0(Stream.java:164)  
at com.teamdev.jxbrowser.internal.BrowserThread$TaskRunner.processTasks(BrowserThread.java:139)  
at java.base/java.lang.Thread.run(Unknown Source)

Ignition v8.1.26 (b2023032308)  
Java: Azul Systems, Inc. 11.0.18

---

<div class="post-metadata">

**Author:** ![Kfoldesi](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kfoldesi/32/11327_2.png) [@Kfoldesi](https://forum.inductiveautomation.com/u/Kfoldesi)\
**Post date:** [May 2, 2023, 3:37pm UTC](https://forum.inductiveautomation.com/t/error-java-lang-exception-unable-to-get-the-view-config-view-config-is-undefined/73124/2 "2023-05-02T15:37:31Z")

</div>

how do you plan to implement navigation in the project?

- I think you need to click on "Views" in the project browser

- then the plus sign beside Page Configuration

---

<div class="post-metadata">

**Author:** ![justin.huggins](https://avatars.discourse-cdn.com/v4/letter/j/d07c76/32.png) [@justin.huggins](https://forum.inductiveautomation.com/u/justin.huggins)\
**Post date:** [August 30, 2024, 6:26pm UTC](https://forum.inductiveautomation.com/t/error-java-lang-exception-unable-to-get-the-view-config-view-config-is-undefined/73124/3 "2024-08-30T18:26:13Z")

</div>

I am getting the same error. This view has been in place over a year working perfectly. Did you find a resolution?

---

<div class="post-metadata">

**Author:** ![Moath\_Dardas](https://avatars.discourse-cdn.com/v4/letter/m/eb9ed0/32.png) [@Moath\_Dardas](https://forum.inductiveautomation.com/u/Moath_Dardas)\
**Post date:** [August 31, 2024, 1:18pm UTC](https://forum.inductiveautomation.com/t/error-java-lang-exception-unable-to-get-the-view-config-view-config-is-undefined/73124/4 "2024-08-31T13:18:43Z")

</div>

Press the Shift key on the keyboard, right-click on the View, and choose "Refresh Browser."

---

<div class="post-metadata">

**Author:** ![Alejandro\_Alaco](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/alejandro_alaco/32/59849_2.png) [@Alejandro\_Alaco](https://forum.inductiveautomation.com/u/Alejandro_Alaco)\
**Post date:** [November 11, 2025, 1:01pm UTC](https://forum.inductiveautomation.com/t/error-java-lang-exception-unable-to-get-the-view-config-view-config-is-undefined/73124/5 "2025-11-11T13:01:46Z")

</div>

I think this is a solution!
