Session expired with StreamingAMFChannel


blaze 4.0

 

i have flex desktop app has 1 consumer using streaming amfchannel. there no producer.

after 30 minutes channel gets disconnected, because httpsession on server expired. connection not idle, because every second 2 messages streamed.

 

i defined heartbeatinterval on channelset, still session expires.

 

this logging:

blazeds :07/02/2012 19:09:49.165 [debug] [client.messageclient] messageclient created clientid '696a7855-841d-abe3-505a-ae5699df4b4a' destination 'messages-feed'.

blazeds :07/02/2012 19:39:06.434 [debug] [client.messageclient] messageclient clientid '696a7855-841d-abe3-505a-ae5699df4b4a' destination 'messages-feed' has been invalidated.

blazeds :07/02/2012 19:39:06.435 [debug] [client.flexclient] flexclient id '696a75ce-8b0e-949a-47cc-9f8256cc96f7' has been invalidated.

 

consumer:

<mx:consumer id="consumer"

                                                   destination="messages-feed"

                                                   channelset="{channelset}"

                                                   resubscribeinterval="5000"

                                                   resubscribeattempts="-1"

                                                   message="messagehandler(event)"

                                                   channeldisconnect="consumerdisconnecthandler(event)"

                                                   />


why http session expiring? because messages pushed in direction server client?

in services-config.xml, can make sure have both server-to-client-heartbeat-millis defined on channel , heartbeat-interval-millis defined on flex-client? happens because though streaming connection open, app server ivalidates session if there no incoming request client side. ideally setting server-to-client-heartbeat-millis on services-config.xml should fix this.



More discussions in BlazeDS


adobe

Comments