I've built projects that do exactly this and was quite pleased with the results. My comm path was:
browser1(flash -> gwt ->) server -> browser2(gwt -> flash) I was able to make between 30 and 60 transmits per second with small packets less than 1K in size on various browsers. Initially I used various styles of push, but ended up using long poll for all the platforms. The server would block on the message queue for 30 seconds and then return an empty result if no messages were there for the client; the client would then immediately recall the Service, which would wait for 30 seconds, or return the queued messages. My pieces of advice are: 1. Transfer Strings only, no other data types. If you have to transmit structured data, use JSON strings and parse them in Flash and on the server. Ample code to do this can be found here: http://www.json.org/ 2. Use the thread-safe classes to store your message queues. I used ConcurrentHashMap(username, queue) to keep individual queues for each user. 3. Use a BlockingQueue for your messages. I used LinkedBlockingQueue() which lets the caller block for messages until a timeout (that 30 seconds part). 4. If you find you have a lot of messages that go stale then be sure to prune your queue of expired messages before adding a new one. Do this on put(), not poll()! I did not use the fabridge code, but it looks like what you want. Be sure you understand that you have to expose a JS method in the $doc/ $win for the flash piece to call, and vice versa export a method from your actionscript for that same JS to call. FABridge looks like it has examples to help. Have fun! Matt --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~----------~----~----~----~------~----~------~--~---
