You could use a modified version of resource watcher that does not use threads and modify request cycle so that watcher is executed before each request cycle. I remember there was some blog somewhere explaining this technique... Maybe it was this...
http://stronglytypedblog.blogspot.com/2009/07/wicket-spring-jdo-on-google-app-engine.html On Wed, Jan 4, 2012 at 11:18 PM, Daniel Watrous <daniel.watr...@gmail.com>wrote: > I tried putting in this: > getResourceSettings().setResourcePollFrequency(Duration.ONE_SECOND); > > But the resource still doesn't update without restarting the google > app engine environment. I just tried it by running Start and that no > longer updates automatically either. > > In the process of trying to make it work with GAE, I changed the > pom.xml to have these lines in the build section > <directory>src/main/webapp/WEB-INF</directory> > > <outputDirectory>src/main/webapp/WEB-INF/classes</outputDirectory> > > That means files are no longer placed in the target directory, but in > the WEB-INF folder. Could this affect it? Have I missed another > setting somewhere that relates to changing where the compiled classes > are placed? > > Daniel > > On Wed, Jan 4, 2012 at 3:01 PM, Sven Meier <s...@meiers.net> wrote: > > Read here: > > > > https://cwiki.apache.org/WICKET/faqs.html#FAQs-Deployment > > > > The relevant setting is: > > getResourceSettings().setResourcePollFrequency(duration); > > > > Sven > > > > > > On 01/04/2012 10:31 PM, Daniel Watrous wrote: > >> > >> Great. I now have it working with either the jar download or the > >> dependency in the pom.xml file. In the dependency xml snippet I didn't > >> realize that I needed to manually provide the version, but after I did > >> then it worked fine. > >> > >> Whenever I update a class and save it in Eclipse, that class is > >> updated in the running server and I don't have to restart to see the > >> changes. This is great. > >> > >> However, when I change an HTML page, it's not updated in the running > >> server, so I have to restart everything. I know that when I run a > >> quickstart app directly (using the Start class) that updates to the > >> HTML are updated without requiring a restart. > >> > >> Do you know how to make it so the HTML files are updated in the live > >> server? > >> > >> Thanks so much. > >> > >> Daniel > >> > >> On Wed, Jan 4, 2012 at 1:38 PM, Sven Meier<s...@meiers.net> wrote: > >>> > >>> With maven it's very easy, just add the dependency to your pom as > >>> suggested > >>> and forget about it. > >>> > >>> Alternatively you can download the jar form maven central manually and > >>> add > >>> it to your project: > >>> > >>> > >>> > >>> > http://repo2.maven.org/maven2/org/wicketstuff/wicketstuff-gae-initializer/ > >>> > >>> Hope this helps > >>> Sven > >>> > >>> > >>> On 01/04/2012 09:28 PM, Daniel Watrous wrote: > >>>> > >>>> I'm still not sure how to create the jar file. No one is commenting on > >>>> it so I feel a bit silly. Should it be obvious? > >>>> > >>>> Am I supposed to include the source with my project or a jar. If a > >>>> jar, how should I build the jar? > >>>> > >>>> On Wed, Jan 4, 2012 at 1:11 PM, Sven Meier<s...@meiers.net> wrote: > >>>>> > >>>>> Hi, > >>>>> > >>>>> make sure you have compatible versions for Wicket and > gae-initializer, > >>>>> i.e. > >>>>> they should be the same. > >>>>> > >>>>> Sven > >>>>> > >>>>> > >>>>> > >>>>> On 01/04/2012 08:49 PM, Daniel Watrous wrote: > >>>>>> > >>>>>> I'm slowly making progress. > >>>>>> > >>>>>> I see now that what Sven replied with goes in the pom.xml. > >>>>>> > >>>>>> What I'm not sure of is if I still need a jar file or the source as > >>>>>> part of my project. I have made the update to my pom.xml, and I'm > now > >>>>>> getting this error when I attempt to run my application: > >>>>>> > >>>>>> java.lang.NoClassDefFoundError: > >>>>>> org/apache/wicket/pageStore/memory/IDataStoreEvictionStrategy > >>>>>> at java.lang.Class.getDeclaredConstructors0(Native Method) > >>>>>> at java.lang.Class.privateGetDeclaredConstructors(Unknown > >>>>>> Source) > >>>>>> at java.lang.Class.getConstructor0(Unknown Source) > >>>>>> at java.lang.Class.getDeclaredConstructor(Unknown Source) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > com.google.appengine.tools.development.agent.runtime.Runtime$2.run(Runtime.java:133) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > com.google.appengine.tools.development.agent.runtime.Runtime$2.run(Runtime.java:131) > >>>>>> at java.security.AccessController.doPrivileged(Native Method) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > com.google.appengine.tools.development.agent.runtime.Runtime.newInstance(Runtime.java:130) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > org.apache.wicket.util.lang.WicketObjects.newInstance(WicketObjects.java:377) > >>>>>> at > >>>>>> org.apache.wicket.Application.addInitializer(Application.java:577) > >>>>>> at org.apache.wicket.Application.load(Application.java:615) > >>>>>> at > >>>>>> > >>>>>> > org.apache.wicket.Application.initializeComponents(Application.java:501) > >>>>>> at > >>>>>> org.apache.wicket.Application.initApplication(Application.java:808) > >>>>>> at > >>>>>> > >>>>>> > org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:346) > >>>>>> at > >>>>>> > >>>>>> > org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:286) > >>>>>> at > >>>>>> org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97) > >>>>>> at > >>>>>> > >>>>>> > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:662) > >>>>>> at > >>>>>> org.mortbay.jetty.servlet.Context.startContext(Context.java:140) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) > >>>>>> at > >>>>>> > org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467) > >>>>>> at > >>>>>> > >>>>>> > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) > >>>>>> at > >>>>>> > >>>>>> > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) > >>>>>> at org.mortbay.jetty.Server.doStart(Server.java:224) > >>>>>> at > >>>>>> > >>>>>> > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > com.google.appengine.tools.development.JettyContainerService.startContainer(JettyContainerService.java:191) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > com.google.appengine.tools.development.AbstractContainerService.startup(AbstractContainerService.java:239) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerImpl.java:146) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > com.google.appengine.tools.development.DevAppServerMain$StartAction.apply(DevAppServerMain.java:164) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > com.google.appengine.tools.util.Parser$ParseResult.applyArgs(Parser.java:48) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > com.google.appengine.tools.development.DevAppServerMain.<init>(DevAppServerMain.java:113) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMain.java:89) > >>>>>> Caused by: java.lang.ClassNotFoundException: > >>>>>> org.apache.wicket.pageStore.memory.IDataStoreEvictionStrategy > >>>>>> at java.net.URLClassLoader$1.run(Unknown Source) > >>>>>> at java.security.AccessController.doPrivileged(Native Method) > >>>>>> at java.net.URLClassLoader.findClass(Unknown Source) > >>>>>> at java.lang.ClassLoader.loadClass(Unknown Source) > >>>>>> at > >>>>>> > >>>>>> > >>>>>> > com.google.appengine.tools.development.IsolatedAppClassLoader.loadClass(IsolatedAppClassLoader.java:176) > >>>>>> at java.lang.ClassLoader.loadClass(Unknown Source) > >>>>>> ... 35 more > >>>>>> > >>>>>> Since gae-initializer did compile when I compiled with maven I also > >>>>>> tried simply putting the compile classes next to my other classes > for > >>>>>> the deployment, but it still gives this error. > >>>>>> > >>>>>> Thanks for all your help. > >>>>>> > >>>>>> Daniel > >>>>>> > >>>>>> On Wed, Jan 4, 2012 at 11:45 AM, Daniel Watrous > >>>>>> <daniel.watr...@gmail.com> wrote: > >>>>>>> > >>>>>>> Is that the same thing as adding the jar file to the build path in > >>>>>>> eclipse? > >>>>>>> > >>>>>>> How do I build gae-initializer.jar? I tried running 'mvn jar', but > it > >>>>>>> gave an error about unknown lifecycle phase. > >>>>>>> > >>>>>>> Daniel > >>>>>>> > >>>>>>> On Wed, Jan 4, 2012 at 11:38 AM, Sven Meier<s...@meiers.net> > >>>>>>> wrote: > >>>>>>>> > >>>>>>>> Hi Daniel, > >>>>>>>> > >>>>>>>> you just have to add the gae-initializer as a dependency to your > >>>>>>>> project: > >>>>>>>> > >>>>>>>> <dependency> > >>>>>>>> <groupId>org.wicketstuff</groupId> > >>>>>>>> <artifactId>wicketstuff-gae-initializer</artifactId> > >>>>>>>> <version>${wicket.version}</version> > >>>>>>>> </dependency> > >>>>>>>> > >>>>>>>> That's all. > >>>>>>>> Sven > >>>>>>>> > >>>>>>>> > >>>>>>>> On 01/04/2012 07:35 PM, Daniel Watrous wrote: > >>>>>>>>> > >>>>>>>>> Also, where do I put the wicket.properties file, and do I need to > >>>>>>>>> update any xml files to indicate that there is a > wicket.properties > >>>>>>>>> file > >>>>>>>>> > >>>>>>>>> On Wed, Jan 4, 2012 at 11:30 AM, Daniel Watrous > >>>>>>>>> <daniel.watr...@gmail.com> wrote: > >>>>>>>>>> > >>>>>>>>>> How do I create the gae-initializer.jar? > >>>>>>>>>> > >>>>>>>>>> I have run mvn compile and generated the class files. I can zip > >>>>>>>>>> those > >>>>>>>>>> up, but I'm not sure if there should be a META-INF folder and > what > >>>>>>>>>> it > >>>>>>>>>> should have. > >>>>>>>>>> > >>>>>>>>>> Daniel > >>>>>>>>>> > >>>>>>>>>> On Wed, Jan 4, 2012 at 12:21 AM, Martin > >>>>>>>>>> Grigorov<mgrigo...@apache.org> > >>>>>>>>>> wrote: > >>>>>>>>>>> > >>>>>>>>>>> Hi, > >>>>>>>>>>> > >>>>>>>>>>> gae-initializer project provides > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > https://github.com/wicketstuff/core/blob/master/jdk-1.6-parent/gae-initializer-parent/gae-initializer/src/main/java/org/wicketstuff/gae/GaeInitializer.java > >>>>>>>>>>> which is an implementation of org.apache.wicket.IInitializer > and > >>>>>>>>>>> declares it in > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > https://github.com/wicketstuff/core/blob/master/jdk-1.6-parent/gae-initializer-parent/gae-initializer/src/main/resources/wicket.properties > . > >>>>>>>>>>> That means that when gae-initializer.jar is in the classpath > >>>>>>>>>>> Wicket > >>>>>>>>>>> will use it to initialize the Application instance. > >>>>>>>>>>> Check the source of GaeInitializer.jar to see what exactly it > >>>>>>>>>>> configures. > >>>>>>>>>>> > >>>>>>>>>>> On Wed, Jan 4, 2012 at 1:52 AM, Daniel > >>>>>>>>>>> Watrous<daniel.watr...@gmail.com> > >>>>>>>>>>> wrote: > >>>>>>>>>>>> > >>>>>>>>>>>> Hi, > >>>>>>>>>>>> > >>>>>>>>>>>> I've been working for a few days to get a wicket application > >>>>>>>>>>>> going > >>>>>>>>>>>> for > >>>>>>>>>>>> Google App Engine with mixed results. I hope these questions > >>>>>>>>>>>> aren't > >>>>>>>>>>>> too noobie for this list? > >>>>>>>>>>>> > >>>>>>>>>>>> There are a couple of really old articles which Google brings > up > >>>>>>>>>>>> first: > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > http://stronglytypedblog.blogspot.com/2009/04/wicket-on-google-app-engine.html > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > http://www.danwalmsley.com/2009/04/08/apache-wicket-on-google-app-engine-for-java/ > >>>>>>>>>>>> > >>>>>>>>>>>> I've also found this resource after digging through the wicket > >>>>>>>>>>>> users > >>>>>>>>>>>> list, but I can't figure out how I'm supposed to use it: > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > https://github.com/wicketstuff/core/tree/master/jdk-1.6-parent/gae-initializer-parent > >>>>>>>>>>>> > >>>>>>>>>>>> I'm using eclipse with the GAE plugin. > >>>>>>>>>>>> > >>>>>>>>>>>> So far this is what I have accomplished. > >>>>>>>>>>>> 1) the first link above provides a download demo as an eclipse > >>>>>>>>>>>> project. I can get this to run, but it's working with old > >>>>>>>>>>>> versions > >>>>>>>>>>>> (wicket 1.3.5, appengine sdk 1.2.0). I haven't successfully > >>>>>>>>>>>> updated. > >>>>>>>>>>>> 2) I can create a new google app engine project in eclipse. It > >>>>>>>>>>>> runs > >>>>>>>>>>>> fine and I can develop servlets. > >>>>>>>>>>>> 3) I can user the maven build script from the quickstart to > get > >>>>>>>>>>>> a > >>>>>>>>>>>> functional wicket project. > >>>>>>>>>>>> > >>>>>>>>>>>> I'm really struggling trying to figure out how to use the > >>>>>>>>>>>> gae-initializer or a base GAE project from eclipse and end up > >>>>>>>>>>>> with > >>>>>>>>>>>> a > >>>>>>>>>>>> functional wicket application... > >>>>>>>>>>>> > >>>>>>>>>>>> I'm not sure what other information to include at this point. > >>>>>>>>>>>> Please > >>>>>>>>>>>> share any pointers or links to other tutorials that might help > >>>>>>>>>>>> me. > >>>>>>>>>>>> > >>>>>>>>>>>> Daniel > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > --------------------------------------------------------------------- > >>>>>>>>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > >>>>>>>>>>>> For additional commands, e-mail: users-h...@wicket.apache.org > >>>>>>>>>>>> > >>>>>>>>>>> -- > >>>>>>>>>>> Martin Grigorov > >>>>>>>>>>> jWeekend > >>>>>>>>>>> Training, Consulting, Development > >>>>>>>>>>> http://jWeekend.com > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > --------------------------------------------------------------------- > >>>>>>>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > >>>>>>>>>>> For additional commands, e-mail: users-h...@wicket.apache.org > >>>>>>>>>>> > >>>>>>>>> > >>>>>>>>> > --------------------------------------------------------------------- > >>>>>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > >>>>>>>>> For additional commands, e-mail: users-h...@wicket.apache.org > >>>>>>>>> > >>>>>>>> > >>>>>>>> > --------------------------------------------------------------------- > >>>>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > >>>>>>>> For additional commands, e-mail: users-h...@wicket.apache.org > >>>>>>>> > >>>>>> > --------------------------------------------------------------------- > >>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > >>>>>> For additional commands, e-mail: users-h...@wicket.apache.org > >>>>>> > >>>>> --------------------------------------------------------------------- > >>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > >>>>> For additional commands, e-mail: users-h...@wicket.apache.org > >>>>> > >>>> --------------------------------------------------------------------- > >>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > >>>> For additional commands, e-mail: users-h...@wicket.apache.org > >>>> > >>> > >>> --------------------------------------------------------------------- > >>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > >>> For additional commands, e-mail: users-h...@wicket.apache.org > >>> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > >> For additional commands, e-mail: users-h...@wicket.apache.org > >> > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > > For additional commands, e-mail: users-h...@wicket.apache.org > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > For additional commands, e-mail: users-h...@wicket.apache.org > > -- Regards - Ernesto Reinaldo Barreiro jWeekend Training, Consulting, Development http://jWeekend.com <http://jweekend.com/>