views:

153

answers:

3

Hi,

I am using a Socket (not xmlSocket) connection between flex applications and the server pushing messages.

Now, when I connect from the local machine to the server everything is working file and running, connection is succesful and I get data back and forth.

When I upload the application (flex) to the server and run it from there, I get a security sandBox violation message.

Note: 1. I do have a crossdomain file with * wildcard both on port and on domain. 2. I created a Securiy.allowDomain("*") as well.

Another thing. I also created another listener on that same server, listening to connections for port 843 (default) and this service just waited for a connection send policy file to the client and that's it.

That did not solve the problem as well...

That's next? What should I do to fix the problem?

Appreciate your help.

Avi

A: 

did you try Security.loadPolicyFile? Does your server on port ever actually 843 receive policy file requests (that's a tiny XML sent to request the crossdomain policy file)? Does your actual server ever receive policy file requests? What traffic do you get on your server?

greetz
back2dos

back2dos
@back2dos:I do get the request and respond with the appropriate response.I do loadPolicyFile from my IIS and it loads the file OK but does not help.
Avi Tzurel
A: 
    .NET
    Add crossdomain.xml to your Web server root directory, for example, 
C:\inetpub\wwwroot.

    Java
    Add crossdomain.xml to \ArcGIS\java\web_output, for example, 
C:\Program Files\ArcGIS\java\web_output. 

http://resources.esri.com/help/9.3/arcgisserver/apis/flex/help/content/deploy_application.htm

Vinothbabu
A: 

The fix for this issue was a dedicated policy file serving server. I implemented a socket listening to the dedicated port where flex is looking for policy file, once I got a connection and a request I answered right back with the appropriate policy file.

This solved the problem for all users and is working very well for me.

Thanks

Avi Tzurel