I'm looking to do an extension of the chat tutorial data push for a distributed RIA which will have multiple users interacting with an external back end data source. Users need to be aware of changes made to that back end data source, and JMS topics are set up to allow us to be notified of changes. As well, data changes and retrieval is conducted via a web service. We'd like to allow for distribution/load balancing so I initially thought we'd have to use the polling stream for messages, but now I wonder if using streaming and having the polling set up as a fall back would suffice? But I'm not familiar enough to say for certain which approach would best suit my needs.
Also, is there a way for a client to become aware if it loses the connection to the BlazeDS server with either? It would be nice for the users to be prompted that a connection failed and the application to behave differently, such as trying to resolve the error.
Any help that can be offered is greatly appreciated.
After some more thought and reading, I'm curious if perhaps I shouldn't just utilize the JMS and RPC features of Blaze from completely within ActionScript. I'm part way through reading http://livedocs.adobe.com/blazeds/1/blazeds_devguide/ , which I didn't find easily but feel I should have been able to. Hopefully it will fill out the gaps in my knowledge and I'll be able to come back to answer this but earlier insights are greatly appreciated.
In essence, I need to be able to dynamically initialize sub-models of my overall data model when certain portions of the application are opened. Think of a windowing system in which each window that opens will only be interested in certain portions of the overall data. Then once a window is opened, it should be alerted to changes performed on data it has loaded. These change notifications are currently set up to be sent out to JMS topics from the server.
Because of the scale of the data model, we only wish to load the portions that we need at any given point. We're building a centralized broker that will handle all the connections for each window and data retrieval/updates.
Any thoughts, insights or suggestions would be greatly appreciated.