java - Long Polling fallback with websocket spring initialization -


i using spring annotations initialize bayeuxserver. enabled websocket setting transport in spring bean -

 bayeuxserverimpl bean = new bayeuxserverimpl();   bean.settransports(new websockettransport(bean)); 

but now, when websocket connection fails or disabled in js($.cometd.websocketenabled = false;), it's not falling long polling successfully. throws error "400 unknown bayeux transport" in firebug console.

i couldn't set longpollingtransport in settransports since longpollingtransport abstract class in library. tried creating class extends longpollingtransport , specifying in settransports api, didn't work either. please let me know if doing wrong. need long polling work in case websockets fail.

cometd version: 2.5.1

jetty version: 7.6.8

by calling bayeuxserver.settransports(...) 1 transport, disable fall capability since explicitly telling cometd use 1 transport only.

class longpollingtransport has 2 subclasses depending on specific mechanism use; may want use class jsontransport.

note cometd documentation has example of how setup websocket spring using xml, enough translate xml code have working annotations.

basically, boils down to:

bayeuxserver.settransports(new websockettransport(bayeuxserver), new jsontransport(bayeuxserver)); 

Comments

Popular posts from this blog

linux - Does gcc have any options to add version info in ELF binary file? -

android - send complex objects as post php java -

charts - What graph/dashboard product is facebook using in Dashboard: PUE & WUE -