Do's and Don'ts

MIME mapping for manifest file

You will need to configure a MIME mapping for the application manifest file.

You can do this by configuring your web server, or you can add the following to your web.xml file (assuming that your application cache file has a .appcache extension):

<mime-mapping>
  <extension>appcache</extension>
  <mime-type>text/cache-manifest</mime-type>
</mime-mapping>

Don't cache the manifest file

Don't cache the application manifest file, otherwise it will not get downloaded to the browser and will not trigger updates of your application.

One way to do this is to configure a no-cache filter in your web.xml file.

Don't include your online login page in the manifest

When a user navigates to your online login page, they have not yet authenticated. If this page is listed in the application's manifest it will trigger the browser to download all the offline pages in the manifest.
These pages are likely to be unavailable to un-authenticated users, so downloading the pages will fail.

Do include your offline login page in the manifest

When working offline, you will still want users to login with a username and password, so make sure your offline login page is in the application's manifest.