title: How does GWT ClientBundle caching work?
body: <p>I am trying to better understand the use of GWT ClientBundle and caching.</p>
  
  <p>If I have a large text file, for example, that I'd like to make available to my client, I can use</p>
  
  <pre><code>public interface MyResources extends ClientBundle {
      public static final MyResources INSTANCE =  GWT.create(MyResources.class);    
        @Source("myText.txt")
        public TextResource myText();
  }
  //-- then later to use the text
  String text = MyResources.INSTANCE.myText().getText(); 
  </code></pre>
  
  <p>Does this mean that the file "myText.txt" would be downloaded from the server the first time the client runs the app, and then the file would be stored in the browser's cache so that in future uses of the app, the file does not need to be downloaded?</p>
  
  <p>If so, what happens if I change "myText.txt", does the app know to get the new version?</p>
  
  <p>Finally, if the file is indeed stored in the cache, how then is this different from local storage in HTML5?</p>
  
  <p>Thanks.</p>