Apache flex 将站点从Flex 3转换为Flex 4时出错
我正在将Flex 3站点移动到Flex 4,但当我运行应用程序时,它试图从Adobe下载.swz文件,并给出以下错误:Apache flex 将站点从Flex 3转换为Flex 4时出错,apache-flex,flex3,migration,flex4,Apache Flex,Flex3,Migration,Flex4,我正在将Flex 3站点移动到Flex 4,但当我运行应用程序时,它试图从Adobe下载.swz文件,并给出以下错误: *** Security Sandbox Violation *** Connection to http://fpdownload.adobe.com/pub/swz/tlf/1.1.0.604/textLayout_1.1.0.604.swz halted - not permitted from http://localhost/Fl/CityGIS/main.swf E
*** Security Sandbox Violation ***
Connection to http://fpdownload.adobe.com/pub/swz/tlf/1.1.0.604/textLayout_1.1.0.604.swz halted - not permitted from http://localhost/Fl/CityGIS/main.swf
Error #2048: Security sandbox violation: http://localhost/Fl/CityGIS/main.swf cannot load data from http://fpdownload.adobe.com/pub/swz/tlf/1.1.0.604/textLayout_1.1.0.604.swz.
Failed to load RSL http://fpdownload.adobe.com/pub/swz/tlf/1.1.0.604/textLayout_1.1.0.604.swz
Failing over to RSL textLayout_1.1.0.604.swz
下面是从localhost下载相同文件的尝试
有没有办法配置SDK来获取这些文件,或者我的应用程序的配置有问题?Hmmmm-通常这是因为您访问的站点不包含crossdomain.xml文件。不过我可以从网上下载 尝试将此添加到编译器选项:-use network=false 然后清理并强制构建你的应用程序 如果这不起作用,只是抓住稻草,但您是否尝试过将其放在您的项目库空间中 另外,您确定已更新到Flex 4.1吗?
我刚刚检查了我的本地KB(evernote),并提到FireFox有时会出现缓存问题,重启FF为我解决了一次问题。我认为问题在于它用于textLayout swc的位置 重定向到 /pub/swz/flex/4.1.0.15186/textloayout_1.1.0.601.swf 跨域政策对此并不满意 我认为这表明您正在使用的sdk版本存在问题。您可以进入
sdks//frameworks/flex config.xml
(位于Flash Builder目录中),查看如何为textLayout.swc配置运行时共享库路径。这就是我为flex_sdk_4.1.0.15186所做的:
<!-- TextLayout SWC -->
<runtime-shared-library-path>
<path-element>libs/textLayout.swc</path-element>
<rsl-url>textLayout_1.1.0.601.swf</rsl-url>
<policy-file-url></policy-file-url>
<rsl-url>http://fpdownload.adobe.com/pub/swz/flex/4.1.0.15186/textLayout_1.1.0.601.swf</rsl-url>
<policy-file-url>http://fpdownload.adobe.com/pub/swz/crossdomain.xml</policy-file-url>
</runtime-shared-library-path>
libs/textLayout.swc
文本布局_1.1.0.601.swf
http://fpdownload.adobe.com/pub/swz/flex/4.1.0.15186/textLayout_1.1.0.601.swf
http://fpdownload.adobe.com/pub/swz/crossdomain.xml
我建议尝试切换到最新的4.1 sdk并重新编译。我发现我只在使用:-use network=false时出现了这个问题,我试图在本地运行html,而.swf正在访问本地文件(在flex security free文件夹之外) 我的解决方法是更新SDK//frameworks/flex-config.xml(在Flash Builder目录中),并交换运行时共享路径的顺序:例如:
<runtime-shared-library-path>
<path-element>libs/textLayout.swc</path-element>
<rsl-url>http://fpdownload.adobe.com/pub/swz/tlf/1.1.0.604/textLayout_1.1.0.604.swz</rsl-url>
<policy-file-url>http://fpdownload.adobe.com/pub/swz/crossdomain.xml</policy-file-url>
<rsl-url>textLayout_1.1.0.604.swz</rsl-url>
<policy-file-url></policy-file-url>
</runtime-shared-library-path>
libs/textLayout.swc
http://fpdownload.adobe.com/pub/swz/tlf/1.1.0.604/textLayout_1.1.0.604.swz
http://fpdownload.adobe.com/pub/swz/crossdomain.xml
文本布局_1.1.0.604.swz
致:
libs/textLayout.swc
文本布局_1.1.0.604.swz
http://fpdownload.adobe.com/pub/swz/tlf/1.1.0.604/textLayout_1.1.0.604.swz
http://fpdownload.adobe.com/pub/swz/crossdomain.xml
对于其他5个左右的条目,您必须这样做
Adobe应该认真考虑这一点,并解决这个问题
希望这有帮助
干杯
帕米
<runtime-shared-library-path>
<path-element>libs/textLayout.swc</path-element>
<rsl-url>textLayout_1.1.0.604.swz</rsl-url>
<policy-file-url></policy-file-url>
<rsl-url>http://fpdownload.adobe.com/pub/swz/tlf/1.1.0.604/textLayout_1.1.0.604.swz</rsl-url>
<policy-file-url>http://fpdownload.adobe.com/pub/swz/crossdomain.xml</policy-file-url>
</runtime-shared-library-path>