2010-08-20 53 views
0

我將Flex 3站點移動到Flex 4,但是當我運行該應用程序時,它嘗試從Adobe下載.swz文件,並且出現以下錯誤:將站點從Flex 3轉換爲Flex 4時的錯誤

*** 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來獲取這些文件,或配置我的應用程序的問題?

回答

0

嗯 - 通常這是因爲您正在訪問的網站不包含crossdomain.xml文件。不過我可以從here下載它。

嘗試增加給你的編譯器選項: - 使用網絡=虛假

然後清潔力構建應用程序。

如果這不起作用,只是抓住吸管,但你有沒有嘗試manually download它,並將其放置在您的項目庫空間?

另外,你確定你已經更新到Flex 4.1嗎?

我剛剛檢查了我的本地KB(evernote),並提到FireFox有時會遇到緩存問題,並且重新啓動FF會爲我解決它。

0

我認爲問題是,它是使用TextLayout的位置SWC http://fpdownload.adobe.com/pub/swz/tlf/1.1.0.604/textLayout_1.1.0.604.swz

重定向到

/pub/swz/flex/4.1.0.15186/textLayout_1.1.0.601。 swf

並且跨域策略對此不滿意。

我認爲這指出了您正在使用的sdk版本的問題。您可以進入sdks/<FRAMEWORK_VERSION>/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> 

我建議嘗試切換到最新的4.1 SDK和重新編譯。

1

我發現我在使用時只有這個問題:-use-network = false,我試圖在本地運行html並且.swf訪問本地文件(在flex安全免費文件夾之外)。

我的解決方法是將更新的SDK //框架/柔性-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> 

TO:

<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> 

您必須爲其他5條左右的條目執行此操作。

Adob​​e應該真的看看這個,並解決問題。

希望這會有所幫助。

乾杯

Parmy