| <html> | 
 | <head> | 
 | <meta http-equiv="content-type" content="text/html; charset=UTF-8"> | 
 | <title>Web App Classpath Problem</title> | 
 | </head> | 
 | <body> | 
 |  | 
 | <h1>Web App Classpath Problem</h1> | 
 |  | 
 | <p>You were directed to this help topic because your server code needed a class or | 
 | resource that was not found on the <i>web app classpath</i>, but <b>was</b> found | 
 | on the <i>system classpath</i>. The <i>system classpath</i> is the classpath | 
 | you specify when launching the Java VM to run hosted mode.  The <i>web app | 
 | classpath</i> is different — it consists of classes that live in your web | 
 | application's <i>war directory</i>.  All server classes and dependencies should | 
 | to be placed in your war directory: libraries (jars) should be placed in | 
 | <nobr><code>war/WEB-INF/lib/</code></nobr> and classes that don't live in  | 
 | jars should be placed in <nobr><code>war/WEB-INF/classes/</code></nobr>. | 
 |  | 
 | <p>GWT hosted mode helpfully works around this problem by mapping these outside | 
 | resources into your web app classpath.  This warning reminds you that failing to | 
 | address the issue can lead to problems when you actually deploy your web app to | 
 | a real server.</p> | 
 |  | 
 | <h2>Tips</h2> | 
 |  | 
 | <ul> | 
 | <li>The most common reason to encounter this problem with a new project is | 
 | using RPC, which tries to load  | 
 | <nobr><code>com.google.gwt.user.client.rpc.RemoteService</code></nobr>. The | 
 | solution to is copy <code>gwt-servlet.jar</code> from the GWT install directory | 
 | into your web app's <nobr><code>war/WEB-INF/lib/</code></nobr> directory.</li> | 
 | <li>If you have a good reason for not following the recommended configuration, | 
 | you can suppress warning by setting the Java system property | 
 | <nobr><code>gwt.nowarn.webapp.classpath</code></nobr>.  Specify | 
 | <nobr><code>-Dgwt.nowarn.webapp.classpath</code></nobr> as a JVM argument when  | 
 | launching hosted mode. | 
 | </li> | 
 | </ul> |