Wednesday, February 29, 2012

Re: GWT application freezes when new version is deployed while using it

Joe,

We've done something similar. Rather than show a pretty dialog, we embedded some JSNI code in the onAsyncCallFail call. This shows a standard "window.confirm" dialog, then calls $wnd.location.href = href (I seem to recall window.location.reload didn't work). We also deploy in the wee weekend hours as well.

I'm liking a lot of the suggestions here, particularly the one about a heartbeat call. The problem I've been wrestling with is: Whenever we want the user to use the new version, we have to wait until they actual do something (i.e. make an RPC call or hit a code-split point). Which means they're trying to get something done and we're interrupting them. A heartbeat mitigates this a little. And assuming we structure things properly, we could notify the user of the new version without actually forcing them to reload. Maybe with a message at the top. I believe Google Groups does this now, yesno?

That's the theory anyway...


On Wed, Feb 29, 2012 at 8:55 PM, Joseph Lust <lifeoflust@gmail.com> wrote:
Kyle,

Can you hardcode the onclick="window.location.reload();" method in the
"OK" button, so it should still work even if the GWT frontend is
hosed?

Sincerely,
Joe

On Jan 11, 8:56 am, Kyle Baley <k...@baley.org> wrote:
> We've gone Thomas's original suggest route of informing the user. But in
> our original pass at this, we threw up a dialog with an OK button on it. It
> said something to the effect of "There's a new version. Please log in
> again". Clicking OK is intended to log the user out and forcibly refresh
> the page.
>
> What we're finding is that for the code-splitting case, the dialog does
> indeed come up but the whole page becomes unresponsive afterward. That is,
> you can't click the OK button. I've verified that this happens regardless
> of whether we put a dialog up or not. Nothing on the page is clickable at
> all. Wondering if this is what others see as well and if so, if there's a
> way around it.

--
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to google-web-toolkit+unsubscribe@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 post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to google-web-toolkit+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.

No comments:

Post a Comment