Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 17.09.2012, 17:36
tofflife вне форума Посмотреть профиль Отправить личное сообщение для tofflife Найти все сообщения от tofflife
  № 1  
Ответить с цитированием
tofflife

Регистрация: Jul 2009
Сообщений: 95
По умолчанию ApplicationDomain и TypeError

Добрый день! Я написал две swf-ки и, как выяснилось, подзабыл, как решается одна проблемка...

Помогите плиз вспомнить =)

Имеется два-swf файла, исходный код которых использует общий класс LoginContent.
Проблема в том, что когда одна флешка загружает вторую, то у второй начинаются проблемы с использованием данного класса: LoginContent, который находится во внешней swf-ке она путает со своим и считает их РАЗЛИЧНЫМИ, в результате:


Код:
[App] afterCreate
[SWF] E:\as3\scaleform\bin\login.swf - 36,976 bytes after decompression
[SWF] E:\as3\scaleform\bin\login.swf - 132,113 bytes after decompression
[SWF] E:\as3\scaleform\bin\login.swf - 70,703 bytes after decompression
TypeError: Error #1034: Type Coercion failed: cannot convert LoginContent@67ba089 to net.wargaming.gui.login.LoginContent.
	at flash.display::Sprite/constructChildren()
	at flash.display::Sprite()
	at flash.display::MovieClip()
	at scaleform.clik.core::UIComponent()[E:\as3\scaleform\src\scaleform\clik\core\UIComponent.as:74]
	at net.wargaming.gui.login::LoginPage()
[SWF] E:\as3\scaleform\bin\AppWrapper.swf - 164,429 bytes after decompression
Я помню, что данная проблема как-то решается через AplicationDomain. Но вот что-то не получилось ничего путного. Пробовал подгружать флешку вот так:

Код AS3:
var urlRequest : URLRequest = new URLRequest(config.url); 
var urlLoader : Loader = new Loader();
 
var ctx : LoaderContext = new LoaderContext(false, ApplicationDomain.currentDomain);
urlLoader.load(urlRequest, ctx);

Может быть вы помните, как правильно разрешать доменные конфликты?

Добавлено через 2 минуты
Отмечу, что вторая флешка компилируется во flashIde, а загружающая её - во FlexBuilder

Старый 17.09.2012, 17:48
Aquahawk вне форума Посмотреть профиль Отправить личное сообщение для Aquahawk Посетить домашнюю страницу Aquahawk Найти все сообщения от Aquahawk
  № 2  
Ответить с цитированием
Aquahawk
 
Аватар для Aquahawk

Регистрация: Nov 2010
Адрес: Москва
Сообщений: 915
Записей в блоге: 4
Отправить сообщение для Aquahawk с помощью ICQ Отправить сообщение для Aquahawk с помощью Skype™
Цитата:
LoginContent@67ba089 to net.wargaming.gui.login.LoginContent
Вам не кажется что пакет разный
__________________
:)

Старый 17.09.2012, 17:52
tofflife вне форума Посмотреть профиль Отправить личное сообщение для tofflife Найти все сообщения от tofflife
  № 3  
Ответить с цитированием
tofflife

Регистрация: Jul 2009
Сообщений: 95
Нет не кажется. Сигнатуры разные. Потому что он считает класс net.wargaming.gui.login.LoginContent из разных доменов.

Добавлено через 3 минуты
Вы оказались правы. Но немного не совсем
Я во FlashIde указал не net.wargaming.gui.login.LoginContent, а net.wargaming.login.LoginContent и он автоматом создал другой класс.
ВОТ БЛИН!

Тему можно считать закрытой. Спасибо, что навел на мысль

Создать новую тему Ответ Часовой пояс GMT +4, время: 23:49.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 23:49.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.