title: Asynchronously update vaadin components
body: <p>I have this code for updating vaadin button's caption every 3 seconds.</p>
  
  <pre><code>TimerTask tt = new TimerTask() {
  
      @Override
      public void run() {
          try {
              logger.debug("adding l to button's caption");
              btn.setCaption(eventsButton.getCaption() + "l");
          } catch (Exception ex) {
              logger.error(ex.getMessage());
          }
      }
  };
  Timer t = new Timer(true);
  t.scheduleAtFixedRate(tt, 0, 3000);
  </code></pre>
  
  <p>However, it can't change button's caption although it is executed every 3 seconds(judging by the log file). How can I access vaadin's GUI components from another thread?</p>