Les, Your methodology ends up using the same basic idea as what I'm currently using: annotations. The problem is that I end up having a class on the client for every procedure on the server. Maybe I could consolidate them into one big class with a bunch of tiny inner classes.
In any case, it seems to me that a class literal is an identifier, just the same as a String or Enum would be. I take your point about security, but no matter what I send to the server, this is more a point of making an easy interface to work with. I, personally, would rather use a class literal as an identifier than an arbitrary identifier that identifies the identifier I really mean. I can always use the standard security mechanisms to ensure that the procedure and request are trusted. -- http://groups.google.com/group/Google-Web-Toolkit-Contributors