Hello! Sign in

Running Wicket on Google App Engine

  1. wicket.jar files (e.g. wicket-1.3.6.jar, slf4j-api-1.5.6.jar, slf4j-jdk14-1.5.6.jar) must be in your classpath. Please place these JARs into WEB-INF/lib.
    wicket-jars
  2. Enable sessions-enabled in WEB-INF/appengine-web.xml <sessions-enabled>true</sessions-enabled>
  3. Development mode of Wicket spawn watchdog threads, however, Google App Engine does not allow spawning threads. One way is to edit WEB-INF/web.xml and switch "wicket.configuration" to "deployment" <init-param> <param-name>wicket.configuration</param-name> <param-value>deployment</param-value> </init-param>
  4. Google App Engine does not allow writing temporary files to local filesystems, however, the default implementation of org.apache.wicket.protocol.http.WebApplication uses local filesystems. Overriding the offending method makes it work, however, there are probably some performance hit. Use of GaeVFS should address this issue. @Override protected ISessionStore newSessionStore() { return new HttpSessionStore(this); }
  5. Google App Engine does not seem to extract javascripts in wicket.jar. My workaround was to manually extract http://treasure-hunt.appspot.com/resources/org.apache.wicket.ajax.WicketAjaxReference/wicket-ajax.js and http://treasure-hunt.appspot.com/resources/org.apache.wicket.markup.html.WicketEventReference/wicket-event.js from wicket.jar to /war directory.