Recurring Flex Sessions with Cross-Domain Requests

When I make a request locally, I have no problem saving my FlexSession; however, when I make a request from another computer, it creates a duplicate of FlexSession for each request. I noticed that the JSESSIONID is different for every request, which probably causes fake sessions.

But I have no idea why this is happening. The specific error I get is:

Channel.Ping.Failed error Detected duplicate HTTP-based FlexSessions, generally due to the remote host disabling session cookies. Session cookies must be enabled to manage the client connection correctly. 

My crossdomain.xml is as follows:

 <?xml version="1.0"?> <!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd"> <cross-domain-policy> <site-control permitted-cross-domain-policies="master-only"/> <allow-access-from domain="*" secure="false"/> <allow-http-request-headers-from domain="*" headers="*" secure="false"/> </cross-domain-policy> 

EDIT:

We use spring-flex integration on the server. In addition, this occurs in several browsers; we tried IE, Firefox and Chrome.

Here is the Flex code:

 var ro : RemoteObject = new RemoteObject("myDestination"); ro.endpoint = "http://localhost/foo"; ro.source = "com.bar.MyService"; var op : AbstractOperation = ro.getOperation("serviceMethod"); op.addEventListener( FaultEvent.FAULT, ro_faultHandler ); op.addEventListener( ResultEvent.RESULT, ro_resultHandler ); op.send(); 
+4
source share
1 answer

There are three articles that describe what happens. Articles are written by some of the guys working on BlazeDS, and you can fix your problem after reading them. If not, try creating a functional test that reproduces the problem, and I'll see.

Alex Blog
Mete blog
Lin blog

+8
source

All Articles