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

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

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

Регистрация: Apr 2009
Сообщений: 56
По умолчанию Remote object в AS3?

Подскажите пжлста, почему у меня не идут данные из remote object. Если я юзаю mxml то усё пучком. А если адский скрипт то ничего нет хорошего (ошибок нет никаких но и данных тоже нет)

Код AS1/AS2:
public static function getHello(msg:TextArea): String
		{
			var res : String='If you see this message, nothing works at all';
			var rm:RemoteObject = new RemoteObject();
 
			rm.addEventListener(ResultEvent.RESULT, serviceSuccessHandler);
			rm.addEventListener(FaultEvent.FAULT, genericFaultHandler);
 
			rm.destination="echoServiceDestination";
 
			try{
				rm.echo('hello');
			}catch(er:Error){
				res=er.getStackTrace();
			}
 
 
			function serviceSuccessHandler(event:ResultEvent):void{
				res=event.result.toString();
			}
 
			function genericFaultHandler(event:FaultEvent):void{
				res='error';	
			}
 
 
 
			return res;
		}

Старый 15.09.2009, 22:45
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 2  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
ваш скрипт адский, но если вы это сами уже знаете - какой смысл постить?
__________________
Hell is the possibility of sanity

Старый 15.09.2009, 23:29
micromacro вне форума Посмотреть профиль Отправить личное сообщение для micromacro Найти все сообщения от micromacro
  № 3  
Ответить с цитированием
micromacro

Регистрация: Apr 2009
Сообщений: 56
смысл, чтобы подсказали что не так. Сам пытался разобраться, но не получилось.

Старый 15.09.2009, 23:55
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 4  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Ну так вы даже близко к мануалу не подходили...
- методы вызваные через RemoteObject ничего вам вернуть не могут т.как они асинхронные.
- вы не можете передавать простые типы по ссылке, только по значению.
- никогда не создавайте анонимные (вложеные) функции.
- если ваш диспатчер и слушатели все были созданы в теле другой функции и никаких внешних ссылок на них больше нигде нет то, скорее всего сборщик мусора поудаляет их до того, как слушатели будут вызваны.
Ну и последнее: RemoteObject наследует Proxy - так что обращения к динамически созданым методам у него не могут вызвать исключения. Вернее могут, но только в том случае если вы пытаетесь вызвать метод совпадающий с именем свойства уже существующего у RemoteObject - но ставить такой вызов в try-catch - глупость... т.как проще заглянуть в документацию и узнать, какие методы не богут быть у этого класса.

ПС. А вообще... если вы пользуетесь чистым AS3 - зачем вам этот RemoteObject сдался? Используйте NetConnection, у него и API более внятные, и весит он меньше... и вообще, это родной класс плеера, а RemoteObject - это многофункциональная куча всякого хлама, с очень загадочным и на редкость непрактичным внутренним устройством...
__________________
Hell is the possibility of sanity

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

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

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


 


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


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