----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/11421/ -----------------------------------------------------------
Review request for rave. Description ------- With this patch widgets are able to interact with widgets on shared Pages that are viewed by multiple people at once. There is a short video showing the interaction of widgets between two browsers available at http://youtu.be/iw6RSI1T7nM (watch with annotations on) For anyone who wants to try this out, there is also a manual describing the necessary steps to get this running and what you can do with it. That includes the setup of a XMPP server that is necessary for this implementation as well as the configuration of the Rave server and creation of widgets that use remote IWC. It is available at http://dbis.rwth-aachen.de/gadgets/rave/iwc.manual.pdf This implementation of remote IWC is build upon the OpenAjax IWC that is used in the OpenAjax Subscriber and Publisher widgets that are included in the Apache Rave widget store. Because of that widgets that already use IWC will require only minimal to no changes to work with remote IWC. (None in the case of the two mentioned widgets). As already mentioned remote IWC is realized with the help of XMPP. In the browser a special branch of StropheJS is used that supports BOSH and Websocket connections. To publish and deliver IWC messages between clients the pubsub extension for XMPP is used. The code for this has been contributed from the ROLE Project[1] and I'm hoping that this patch can be merged into the Apache Rave project, so it would be great if some of you could test this patch and tell me what you think of it. Comments are very welcome. Diffs ----- trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/model/User.java 1486260 trunk/rave-components/rave-core/pom.xml 1486260 trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/UserImpl.java 1486260 trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/service/IWCService.java PRE-CREATION trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/service/impl/DefaultIWCService.java PRE-CREATION trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/service/impl/DefaultNewAccountService.java 1486260 trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/service/impl/DefaultPageService.java 1486260 trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/service/impl/xmpp/Intent.java PRE-CREATION trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/service/impl/xmpp/OwnerAffiliation.java PRE-CREATION trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/service/impl/xmpp/OwnerAffiliationsExtension.java PRE-CREATION trunk/rave-components/rave-core/src/test/java/org/apache/rave/portal/service/impl/DefaultNewAccountServiceTest.java 1486260 trunk/rave-components/rave-core/src/test/java/org/apache/rave/portal/service/impl/DefaultPageServiceTest.java 1486260 trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaUser.java 1486260 trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/conversion/JpaUserConverter.java 1486260 trunk/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverter.java 1486260 trunk/rave-components/rave-web/src/main/java/org/apache/rave/portal/web/api/rpc/IWCApi.java PRE-CREATION trunk/rave-portal-resources/src/main/resources/db/initial-data.json 1486260 trunk/rave-portal-resources/src/main/webapp/WEB-INF/tags/rave_js.tag 1486260 trunk/rave-portal-resources/src/main/webapp/static/script/core/rave_api.js 1486260 trunk/rave-portal-resources/src/main/webapp/static/script/core/rave_core.js 1486260 trunk/rave-portal-resources/src/main/webapp/static/script/core/rave_opensocial.js 1486260 trunk/rave-portal-resources/src/main/webapp/static/script/portal/rave_iwc.js PRE-CREATION trunk/rave-portal-resources/src/main/webapp/static/script/portal/strophe.js PRE-CREATION trunk/rave-portal-resources/src/main/webapp/static/script/portal/strophe.pubsub.js PRE-CREATION Diff: https://reviews.apache.org/r/11421/diff/ Testing ------- Thanks, Andreas Guth
