Index: trunk/src/tmcsim/application.properties
===================================================================
--- trunk/src/tmcsim/application.properties	(revision 457)
+++ trunk/src/tmcsim/application.properties	(revision 458)
@@ -1,5 +1,5 @@
-#Thu, 18 Jul 2019 10:22:38 -0700
+#Fri, 19 Jul 2019 09:44:03 -0700
 
-Application.revision=455
+Application.revision=457
 
 Application.buildnumber=165
Index: trunk/src/tmcsim/client/cadclientgui/screens/UnitStatus.java
===================================================================
--- trunk/src/tmcsim/client/cadclientgui/screens/UnitStatus.java	(revision 445)
+++ trunk/src/tmcsim/client/cadclientgui/screens/UnitStatus.java	(revision 458)
@@ -214,4 +214,5 @@
 
         unitStatusTable.setModel(new DefaultTableModel());
+        
         ((DefaultTableModel) unitStatusTable.getModel())
                 .setColumnIdentifiers(TableHeaders.UNIT_STATUS_HEADERS);
@@ -1057,27 +1058,35 @@
         if (unitStatusTable.getTableHeader().getResizingColumn() == null)
         {//only update info if resize not in progress
-            try
-            {
-                int index = unitStatusTable.getSelectedRow();
-                List<? extends SortKey> keys = unitStatusTable.getRowSorter().getSortKeys();
-                int[] columnWidths = new int[20];
-                for (int i = 0; i < unitStatusTable.getColumnCount(); i++)
-                {
-                    columnWidths[i] = unitStatusTable.getColumnModel().getColumn(i).getWidth();
-                }
-
-                unitStatusTable.setModel(ScreenManager.theCoordinator.getCadDataTable(CADDataEnums.TABLE.UNIT_STATUS));
-
-                for (int i = 0; i < unitStatusTable.getColumnCount(); i++)
-                {
-                    unitStatusTable.getColumnModel().getColumn(i).setPreferredWidth(columnWidths[i]);
-                }
-                unitStatusTable.getRowSorter().setSortKeys(keys);
-                unitStatusTable.getSelectionModel().setSelectionInterval(index, index);
-            } catch (RemoteException ex)
-            {
-                System.out.println("RemoteException in refreshTable method of UnitStatus.java");
-                System.out.println(ex.getMessage());
-            }
+               
+                // Perhaps this needs to be done in Swing's Event Dispatch Thread.
+                // See https://stackoverflow.com/questions/1732503/java-lang-arrayindexoutofboundsexception-0-0-attempting-to-populate-jtable
+                SwingUtilities.invokeLater(new Runnable(){public void run(){
+                    int index = unitStatusTable.getSelectedRow();
+                    List<? extends SortKey> keys = unitStatusTable.getRowSorter().getSortKeys();
+                    // Save column widths prior to updating table
+                    int[] columnWidths = new int[20];
+                    for (int i = 0; i < unitStatusTable.getColumnCount(); i++)
+                    {
+                        columnWidths[i] = unitStatusTable.getColumnModel().getColumn(i).getWidth();
+                    }
+                    //Update the model here
+                    try
+                    {
+                        // Update the table with current Coordinator data
+                        unitStatusTable.setModel(ScreenManager.theCoordinator.getCadDataTable(CADDataEnums.TABLE.UNIT_STATUS));
+                    } catch (RemoteException ex)
+                    {
+                        System.out.println("RemoteException in refreshTable method of UnitStatus.java");
+                        System.out.println(ex.getMessage());
+                    }
+                    // Set preferred column widths
+                    for (int i = 0; i < unitStatusTable.getColumnCount(); i++)
+                    {
+                        unitStatusTable.getColumnModel().getColumn(i).setPreferredWidth(columnWidths[i]);
+                    }
+                    unitStatusTable.getRowSorter().setSortKeys(keys);
+                    unitStatusTable.getSelectionModel().setSelectionInterval(index, index);
+                }});
+
             revalidate();
             repaint();
