Il succo, purtroppo, NON cambia. doInBackground è eseguito in un thread che non è il EDT. Quindi:
north.getBtnStop().setEnabled(true);
bar.setIndeterminate(true);
bar.setString("Loading...");
model.addRow(row);
JOptionPane.showMessageDialog(null, ex.getMessage());
NON li dovresti fare lì così.