If you intend to support only browsers that support CORS (which, you will notice, excludes IE, at least until IE10 is released), then you can simply use RequestBuilder or GWT-RPC, as always.
If you ever use custom request headers, the server will need to allow the client application to cross-start these requests by sending the appropriate Access-Control-Allow-Origin header in response to OPTIONS requests (known as preflight requests in CORS).
If you want / need IE support and you need to make a POST request, then you have no choice but to use the FormPanel and use some trick to pass the response to the client (the easiest is to redirect to a page with the same origin as the application GWT, passing the result in the query string).
If you can do GET instead of POST s, then you can use JsonpRequestBuilder (and, of course, adapt your server code to respond to JavaScript)
Thomas Broyer
source share