That helped. I'm getting really close.
I'm now getting a null pointer exception in this function
public boolean add(IModifiable modifiable, IChangeListener listener) {
// TODO Auto-generated method stub
checkResources();
Set<IChangeListener> listeners =
listenersMap.putIfAbsent(modifiable,
new HashSet<IChangeListener>());
return listeners.add(listener);
}
listeners is null.
I noticed that start(Duration pollFrequency) in GaeModificationWatcher
was never getting called, so I updated my WicketApplication to set it
like this:
IModificationWatcher watcher = new GaeModificationWatcher();
watcher.start(Duration.ONE_SECOND);
getResourceSettings().setResourceWatcher(watcher);
But that didn't help my problem. I'm still trying to follow
http://agilewombat.blogspot.com/2010/01/wicket-on-google-app-engine.html
Any pointers?
Thanks,
Daniel
On Tue, Feb 7, 2012 at 8:42 AM, Martin Grigorov <[email protected]> wrote:
> Try with java.util.Map.Entry
>
> On Tue, Feb 7, 2012 at 5:39 PM, Daniel Watrous <[email protected]>
> wrote:
>> I've now created a class MyRequestCycleListener extends
>> AbstractRequestCycleListener.
>>
>> I'm having a little trouble building class GaeModificationWatcher
>> implements IModificationWatcher. I've tried following this example:
>> http://agilewombat.blogspot.com/2010/01/wicket-on-google-app-engine.html
>>
>> to create the public void checkResources() function, but I'm not sure
>> what Entry class to import. I have tried importing these two Entry
>> classes:
>> org.apache.wicket.util.collections.IntHashMap.Entry
>> import
>> com.google.appengine.repackaged.com.google.common.collect.Multiset.Entry
>>
>> It seems no matter which Entry class I import I get errors like:
>>
>> Multiple markers at this line
>> - Entry cannot be resolved to a type
>> - The constructor
>> HashSet<Entry<IModifiable,Set<IChangeListener>>>(Set<Map.Entry<IModifiable,Set<IChangeListener>>>)
>> is
>> undefined
>> - Incorrect number of arguments for type IntHashMap.Entry; it cannot
>> be parameterized with arguments <IModifiable,
>> Set<IChangeListener>>
>>
>> Thanks for any pointers.
>>
>> Daniel
>>
>>
>> On Tue, Feb 7, 2012 at 7:07 AM, Martin Grigorov <[email protected]> wrote:
>>> On Tue, Feb 7, 2012 at 3:53 PM, Daniel Watrous <[email protected]>
>>> wrote:
>>>> Thanks Martin,
>>>>
>>>> I did make that much progress yesterday after sending this, but I
>>>> can't figure out how to get the Application inside the onBeginRequest
>>>> method that I override. In the other examples they call
>>>> getApplication()
>>>>
>>>> @Override
>>>> protected void onBeginRequest() {
>>>> if
>>>> (getApplication().getConfigurationType().equals(Application.DEVELOPMENT))
>>>> {
>>>> final GaeModificationWatcher resourceWatcher =
>>>> (GaeModificationWatcher) getApplication()
>>>> .getResourceSettings().getResourceWatcher(true);
>>>> resourceWatcher.checkResources();
>>>> }
>>>> }
>>>>
>>>> How can I get the Application object?
>>>
>>> Application.get()
>>>
>>>>
>>>> Daniel
>>>>
>>>> On Mon, Feb 6, 2012 at 11:43 PM, Martin Grigorov <[email protected]>
>>>> wrote:
>>>>> Hi,
>>>>>
>>>>> On Tue, Feb 7, 2012 at 1:32 AM, Daniel Watrous <[email protected]>
>>>>> wrote:
>>>>>> Hi,
>>>>>>
>>>>>> I'm following up on a previous thread that's still unresolved. I would
>>>>>> like GAE to automatically reload my HTML when I save changes. Classes
>>>>>> are reloaded when I save (compile) them, but I have to restart each
>>>>>> time for HTML changes.
>>>>>>
>>>>>> There are some old articles that show how to do this, but they deal
>>>>>> with older versions of Wicket and GAE. For example:
>>>>>> http://agilewombat.blogspot.com/2010/01/wicket-on-google-app-engine.html
>>>>>> http://apache-wicket.1842946.n4.nabble.com/How-can-I-reload-HTML-in-app-engine-td3005241.html
>>>>>> http://code.google.com/p/kickat26/source/browse/trunk/src/de/kickat26/ui/wicket/GAEModificationWatcher.java
>>>>>>
>>>>>> Those suggest creating a class MyWebRequestCycle extends
>>>>>> WebRequestCycle, but wicket 1.5 doesn't have WebRequestCycle.
>>>>>>
>>>>>> How can I accomplish this same thing in the current version of wicket?
>>>>>
>>>>> application.getRequestCycleListeners().add(new MyRequestCycleListener())
>>>>>
>>>>> class MyRequestCycleListener extends AbstractRequestCycleListener {
>>>>> // override the method you need here
>>>>> }
>>>>>
>>>>> Once you have it you can contribute it to gae-initializer project so
>>>>> other people can re-use it and improve it.
>>>>>
>>>>>>
>>>>>> Daniel
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: [email protected]
>>>>>> For additional commands, e-mail: [email protected]
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Martin Grigorov
>>>>> jWeekend
>>>>> Training, Consulting, Development
>>>>> http://jWeekend.com
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: [email protected]
>>>>> For additional commands, e-mail: [email protected]
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: [email protected]
>>>> For additional commands, e-mail: [email protected]
>>>>
>>>
>>>
>>>
>>> --
>>> Martin Grigorov
>>> jWeekend
>>> Training, Consulting, Development
>>> http://jWeekend.com
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [email protected]
>>> For additional commands, e-mail: [email protected]
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>>
>
>
>
> --
> Martin Grigorov
> jWeekend
> Training, Consulting, Development
> http://jWeekend.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]