If you don't mind writing some Javascript, however, you could implement
what amounts to IPC between the two windows running separate GWT apps.
First, you would need to open the window using a JSNI method, so that
you can get the window handle:
native JavaScriptObject openWindow(String url) /*-{
return $wnd.open(url, '_blank');
}-*/;
In the other app, you would want to 'register' a function to receive
messages:
native void registerListener(String function) /*-{
$wnd[function] = function(arg) {
// Probably want to do something more interesting.
$wnd.alert('Received: ' + arg);
};
}-*/;
Then in the first app, you can write a simple function to call across
the boundary:
native void sendSomething(JavaScriptObject wnd, String function,
String arg) /*-{
wnd[function](arg);
}-*/;
Then in your first app, you would write something like:
JavaScriptObject otherWindow = openWindow("otherWindow.html");
sendSomething(otherWindow, "myListener", "blah");
And in the target app, you would want to register the listener function
in your onModuleLoad():
registerListener("myListener");
I realize all of this might seem a little crazy, but it seems to me
like something that we might be able to build in to the toolkit more
'officially' in the future.
joel.
Vikas.