Friday, November 30, 2012

Re: Strange RPC regression in GWT 2.5

You should warn your customers then using iOS6 can result in unpredictable app behavior. Its not just the POST caching issue in iOS 6. The JS engine on iOS 6 seems to have some serious bugs. In this group someone posted an iOS 6 issue where HashMap.put stops working for him (maybe related to your issue as you use HashMaps). 

My example:

An app that works with GWT 2.4 stops working with GWT 2.5 on iOS 6 but both versions work with iOS 5. To investigate we connected to iOS 6 using Safari's remote debugging tools and suddenly the app works again with GWT 2.5 and no further modifications. Disconnect from remote debugging lets the app break again. Also it does not always break at the same app state. Sometimes it simply fails to load and sometimes it loads but fails during a place change.

Normally we send unexpected JS exceptions to a server so we can deobfuscate its stack trace and fix it. In this case nothing gets send to the server so we had to add some logging code as we cant remote debug. So we added a while loop which prints the exception stack trace (its a while loop because of possible GWT UmbrellaExceptions), compiled the app and suddenly it works again. Then removed the code again, recompiled and its broken again.

We have taken both compilations (with and without this logging while loop), corrected the GWT generated MD5 file names and then run a diff on everything. The only difference was the while loop code, that really was very very simple. So about 10 lines of code are different.

So we keep the loop in, it really does nothing, but the app "somehow works" on iOS 6 with GWT 2.5 but maybe it still breaks in certain circumstances.

No idea whats going on here but I hope that Apple will know whats going on and will fix its JS engine in iOS 6.1. Not sure what they have done but they clearly have done something wrong.

So be prepared that you simply can't solve your issue.

-- J.

--
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/-/nJ1i2oNZSnQJ.
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