I'm not logging an issue yet because I don't have nearly enough information 
to attempt to document the issue. Instead, I wanted to share what I'm 
seeing and to see if anyone else has had a similar experience.

For some background, we have a mature GWT application and have been happily 
using GWT in production since around 1.5 and were experimenting with it a 
little before that. The code that is suddenly causing issues hasn't been 
touched in a while. The product is TeamPage at http://tractionsoftware.com

The issue is as follows:

* About 50% of the time when clicking and holding a hash style link and 
selecting "Open in New Tab" on iOS 6, part of the RPC response is not 
properly deserialized. It can also happen when clicking a link from an 
email message that opens in Safari in a new tab.

As you can imagine, we've been struggling to diagnose this. It only happens 
in iOS6 and only when opening in a new tab or a fresh view. We have not 
seen any similar issues in any other browsers.

I tried a GWT build from r11390 and it still happens. I reverted to GWT 2.4 
and the problem went away.

We have an RPC service method that looks like this:

    public ViewData get(ViewRequest request) throws GwtTractionException;

The ViewData object returned looks like this:

    public final class ViewData implements ViewContent, GetProperty2 {
        private String name;
        private HashMap<String,String> properties = new 
HashMap<String,String>();
        private HashMap<String,ArrayList<ViewContent>> content;
    }

ViewContent is a simple marker interface for Objects that can be sent back 
as view content. Since ViewData implements ViewContent, we often have a 
recursive tree of ViewData, but a few other objects implement ViewContent 
as well.

    public interface ViewContent extends IsSerializable {}

* The problem is that content comes back empty, when in fact it should have 
data. properties and name are properly deserialized and non-empty. content 
is undefined.

I've inspected with wireshark and the RPC payload is identical in cases 
that work and fail. As I mentioned, it only fails 50% of the time. When it 
fails, the value of "content" in javascript is undefined and a ViewContent 
implementation that we expect to be there causes an UmbrellaException with 
TypeError of 'null' is not an object.

So my questions are as follows:

1) Is anyone else seeing strange RPC issues from iOS 6 when opening links 
in new tabs?

2) Does anyone have a suggestion on where I should look in GWT src to 
investigate the issue?

Sorry this is so vague. I'm happy to provide any more information that 
might be helpful.

-Andy




-- 
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/-/8EJPDj-Dx8IJ.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to