Does your data fetch include the event bus in some way? If so you may be running into the problem that handler changes (adds/removes) are only applied after the current event has completed. In this case that event would be the place change eventually calling the activity start.
Sorry for the lack of references, im not at a pc
i have an activity that needs another class to resolve the state (ids to real objects) brought by current place. this class' "getData(StateObject)" is called within start-method right after registering for the class' gotData-event. But the activitie's onGotData-data method isn't called the first time. If the activity calls getData after the start method all works fine.i have the feeling that this can't work but how to get it working? The data class need an object provided by a special kind of place (the same place as the activity starts on).
--
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To view this discussion on the web visit https://groups.google.com/d/msg/google-web-toolkit/-/6MNHc8yNbm0J.
To post to this group, send email to google-we...@googlegroups.com.
To unsubscribe from this group, send email to google-web-tool...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Does your data fetch include the event bus in some way? If so you may be running into the problem that handler changes (adds/removes) are only applied after the current event has completed. In this case that event would be the place change eventually calling the activity start.
Sorry for the lack of references, im not at a pc
On 24 Apr 2012 14:49, "tanteanni" wrote:
i have an activity that needs another class to resolve the state (ids to real objects) brought by current place. this class' "getData(StateObject)" is called within start-method right after registering for the class' gotData-event. But the activitie's onGotData-data method isn't called the first time. If the activity calls getData after the start method all works fine.i have the feeling that this can't work but how to get it working? The data class need an object provided by a special kind of place (the same place as the activity starts on).--
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To view this discussion on the web visit https://groups.google.com/d/msg/google-web-toolkit/-/6MNHc8yNbm0J.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to google-web-toolkit+unsub...@googlegroups.com.
[1] http://code.google.com/p/google-web-toolkit/source/browse/branches/2.1/bikeshed/src/com/google/gwt/app/place/ActivityManager.java?r=8009#85
[2] http://code.google.com/p/google-web-toolkit/source/browse/trunk/user/src/com/google/web/bindery/event/shared/SimpleEventBus.java#156
>>> To post to this group, send email to google-we...@googlegroups.com.
>>> To unsubscribe from this group, send email to
>>> google-web-tool...@googlegroups.com.
>>> For more options, visit this group at
>>> http://groups.google.com/group/google-web-toolkit?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google Web Toolkit" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/google-web-toolkit/-/BLVNKJReNVAJ.
>
> To post to this group, send email to google-we...@googlegroups.com.
> To unsubscribe from this group, send email to
> google-web-tool...@googlegroups.com.
Ah yes, the code you pasted exactly fits the problem I described. The
activity start method is called by the ActivityManager from within the
PlaceChangeEvent.Handler [1]. The SimpleEventBus, uses deferred
methods to only apply changes to the handler lists after the current
round of events have fired [2]. i.e. if you are currently in a
handler, add a handler and then immediately fire that event, your
handler won't be called.[1] http://code.google.com/p/google-web-toolkit/source/browse/branches/2.1/bikeshed/src/com/google/gwt/app/place/ActivityManager.java?r=8009#85
[2] http://code.google.com/p/google-web-toolkit/source/browse/trunk/user/src/com/google/web/bindery/event/shared/SimpleEventBus.java#156
>>> To post to this group, send email to google-web-toolkit@googlegroups.com.
>>> To unsubscribe from this group, send email to
>>> For more options, visit this group at
>>> http://groups.google.com/group/google-web-toolkit?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google Web Toolkit" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/google-web-toolkit/-/BLVNKJReNVAJ.
>
> To post to this group, send email to google-web-toolkit@googlegroups.com.
> To unsubscribe from this group, send email to
I think your only two choices are to either avoid the event bus for
the async data call, or as you suggest with the Scheduler.
>> >>> google-web-toolkit@googlegroups.com.
>> >>> To unsubscribe from this group, send email to
>> >>> google-web-toolkit+unsub...@googlegroups.com.
>> >>> For more options, visit this group at
>> >>> http://groups.google.com/group/google-web-toolkit?hl=en.
>> >
>> > --
>> > You received this message because you are subscribed to the Google
>> > Groups
>> > "Google Web Toolkit" group.
>> > To view this discussion on the web visit
>> > https://groups.google.com/d/msg/google-web-toolkit/-/BLVNKJReNVAJ.
>> >
>> > To post to this group, send email to
>> > google-web-toolkit@googlegroups.com.
>> > To unsubscribe from this group, send email to
>> > google-web-toolkit+unsub...@googlegroups.com.
>> > For more options, visit this group at
>> > http://groups.google.com/group/google-web-toolkit?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google Web Toolkit" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/google-web-toolkit/-/ttj2N8rpsIIJ.
>
> To post to this group, send email to google-web-toolkit@googlegroups.com.
> To unsubscribe from this group, send email to
> google-web-toolkit+unsub...@googlegroups.com.