Let me save you about four hours of debugging.
You find yourself in the following situation: in your Flex client, you’ve allocated an instance of flash.net.NetConnection, and added an event listener, myNetStatusListener(), for its NetStatusEvent.NET_STATUS message. You call the instance’s connect() method, and your app runs fine, on every platform, and in every browser.
Except when running in a VMWare Windows virtual machine on top of the Mac OS. Then, and ONLY then, connect() never triggers a NET_STATUS message to myNetStatusListener() …not with “success,” not with “failure,” not with “rejected,” nothing.
I don’t know what the ultimate cause of this problem is, but I know how to work around it:
- in VMWare’s “Virtual Machine”->”Network Adapter” menu,
- select “Bridged (auto-detect)” instead of “NAT”, as shown in the screenshot at right (click to enlarge).
Problem solved. I think.
I hate bugs like this, because without knowing its ultimate cause, I can’t be sure that its work-around won’t break something else. Say, for example, that you’ve got a problem with some other app, which can only be fixed by setting VMWare’s “Network Adapter” setting to “NAT”. The two fixes are mutually exclusive. You can fix one, or the other, but not both.
Sigh. Time does not permit me to dig deeper into the ultimate cause of this problem. If you know, please enlighten me!
Sometimes, programming is a twisty maze of little passages, all alike…
— Jim
P.S.: Now that this bug is worked-around, some new Messaging samples will be uploaded shortly.
