Add a new component to work with NIO frameworks & Bayeux protocol as defined by 
the comed project (http://cometdproject.dojotoolkit.org/)
-----------------------------------------------------------------------------------------------------------------------------------------

                 Key: CAMEL-982
                 URL: https://issues.apache.org/activemq/browse/CAMEL-982
             Project: Apache Camel
          Issue Type: New Feature
    Affects Versions: 2.0.0
            Reporter: Charles Moulliard


Hi,

May I suggest to create a new component that will allow Camel to communicate 
with NIO framework(s)/Bayeux protocol like cometd/grizzly, ... (more 
information about what you can do with such framework can be found here : 
http://cometdproject.dojotoolkit.org/, 
http://www.tutorialized.com/view/tutorial/Create-event-driven-Web-apps-using-Continuous-and-Reverse-Ajax/27495,
 http://www.ibm.com/developerworks/web/library/j-jettydwr/)

When you design a reverse ajax application where you want to use the 'push' 
technology at the serverside, you need to use a servlet modified using java New 
I/O API (see wiki : http://en.wikipedia.org/wiki/Comet_(programming) for 
detailed info). Such modified servlet already exist in 
Tomcat/Jetty/Glassfish/Grizzly servers because they have implemented the comet 
framework.

Next, in order for a client to be notified (through push technology) that 
something happens at the server side, an event listener must be created and 
link to the comet API. Every time that an action occurs, the event will send 
back the information to the browser. Such technology already works today in DWR 
package (Direct Web Remoting), Google/Gears, Flex/BlazeDS and the famous 
DojoToolkit.

My proposition is to integrate Camel with Cometd/Bayeux protocol in such a way 
that we can work with event published. A event available through bayeux 
protocol could be exposed as an endpoint to allow to use it through the routing.

e.g.

At the camel side, the idea is to use the routing as usual :

from(jms:queue)
to(comet:event)

When a message arrives in the queue, we send it to the cometd:event or 
bayeux:event endpoint


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to