// refreshing the Look and Feel of the entire app
Frame frames[] = Frame.getFrames();

// refresh all Frames in the app
for ( int i=0; i<frames.length; i++ )
   {
   SwingUtilities.updateComponentTreeUI( frames[i] );
   Window windows[] = frames[i].getOwnedWindows();

   // refresh all windows and dialogs of the frame
   for ( int j=0; j<windows.length; j++ )
      {
      SwingUtilities.updateComponentTreeUI( windows[j] );
      }
   }
// It should not be necessary to revalidate or repaint on top of that.