Hi,
I’m new in the Vaadin way and I’m trying to develop a real time concurrent application.
My first approach was to look for an add-on in the vaadin database, but I couldn’t find any,
I also tried the existing threads in the forums, but it seems no one had any problem with this.
My next step is to try to use vaadin 7 with an already existing OT framework, like cometd, sharejs or opencoweb.
Does Vaadin 7 have any support to Operational Transformation? Is it possible to integrate it with the mentioned OT frameworks?
There are push technologies that can be used to create applications where many can interact with each others in pretty much real time, but I haven’t heard of anything like OT. The term in itself is unknown to me.
If you give a bit of more info on what you need then maybe I can give more concrete suggestions.
Operational Transformation is one kind of algorithms to support live concurrent editing. It works by resolving the multiple-user changes in the same object, assuring consistency of the final viewed data for all connected users. More information can be seen here: http://www.waveprotocol.org/whitepapers/operational-transform
Observation: OT is not a requirement of my project; I’m just mentioning it because it seemed the most used one.
I’m no expert in OT, but the two main solutions that I know - sharejs and opencoweb - heavily rely on javascript in the client side; which requires certain level of effort to integrate it with vaadin.
You mentioned the use of push technologies; do you have any link that explains them within vaadin 7?
I see what you mean now. There is most likely some implementation in Java (= outside Vaadin) of OT, which you can use directly behind the UI layer. For pushing changes to the UI check one of the sticky posts here on the forum about
Updating UI from another thread .
You can choose from a set of add-ons to use as the push mechanism. There are:
ICEPush
There will be a built in implementation of this, maintained by the Vaadin team, in the close future. I think it has been scheduled for Vaadin 7.1. Before that, you could look into those alternatives. I’ve seen many applications using those. for example real time games or a calendar application (using Vaadin Calendar) where many users can modify the same calendar at the same time.