The flash cross domain handler that runs on port 5229 immediately spits a cross domain file at whoever connects to the port. That is improper as Flash is expecting to perform an HTTP dance to retrieve that file. In other words, flash expects to connect, send a GET /crossdomain.xml, get the file, and disconnect. Instead, often flash based clients will connect, go to send the GET, and either notice they've been disconnected already and freak out, or do the GET, not hear anything back (because it was already sent before they got their GET out), and time out. A simple fix for this will be to run a minimal HTTP servlet on that port.
Based on this document:
http://www.adobe.com/devnet/flashplayer/articles/socket_policy_files.html
We should not be doing HTTP for this. That said, HTTP works, and Flash clients accept it just fine. That said, might as well follow the guidelines as precisely as possible.
This is useful for reference:
http://www.broculos.net/tutorials/how_to_make_a_multi_client_flash_java_server/20080320/en
While adobe's documentation says you should do it one way, the other works fine too. So we're going with it answering both style requests, and back to the extremely lightweight handler.