开发项目是Flex+Java,部署后的应用群有的时候Flex←→Java互通讯是正常的,但是部署在其他的路径中或其他服务器上却是不通的,这个问题困扰了我很长时间,百思不得其解,因为通常的逻辑是:如果出现有些情况下可运行,有些情况下不可运行的问题,则一定不是程序的问题。所以推断极有可能是系统对Flex或Java的支持问题。
于是按照以下思路开始查找症结:
Java环境变量是否正确配置→
JVM是否有问题→
服务器netstat状态→
Socket启动后端口状态→
数据库RemoteAccess设置→
数据库连接数是否用完→
Flash Player版本是否足够高→
OS对Flash Player的安全沙箱是否打开了(是否将应用部署的路径添加到安全沙箱中)→
最后发现问题出现在了安全沙箱,解决方法:
例如应用部署盘符为e:/
进入路径:C:/WINDOWS/system32/Macromed/Flash/FlashPlayerTrust(若没有FlashPlayerTrust,新建该文件夹)
更改conf.cfg或增加该文件,内容为:
c:/
d:/
e:/
如果需要增加更多的盘符,继续添加
重新打开swf,与Java应用的通讯正常了!