Из приложения AS3 Flash я пытаюсь установить SharedObject для экземпляра пользовательского класса, который я создал. Из того, что я могу сказать, как только я вызываю sharedObject.setProperty("propertyName", myCustomClass)
, Red5 выдает «Ошибка загрузки класса», а затем отключает клиент, потому что декодирование не удалось.
Кажется, у многих других людей были подобные проблемы, но все, что я нашел, касалось создания SharedObjects на стороне сервера. У меня возникли проблемы с поиском информации о создании SharedObject на стороне клиента (в приложении Flash). Я просто использую включенное «живое» приложение Red5 из коробки.
Вот фактическая ошибка, которую я вижу в журналах Red5...
[ERROR] [NioProcessor-7] org.red5.io.amf.Input - Error loading class: com.striparcade.API.Player
[ERROR] [NioProcessor-7] org.red5.server.net.rtmp.codec.RTMPProtocolDecoder - Error decoding buffer
com.striparcade.API.Player
— это рассматриваемый пользовательский класс. Этот класс реализует IExternalizable, включает методы writeExternal() и readExternal() и вызов registerClassAlias(). Кажется, сериализуется просто отлично.
Конечно, мне не нужно воссоздавать этот класс и в приложении Red5? Разве Red5 не должен просто брать данные и передавать их другим клиентам, когда это необходимо? Есть идеи, что мне не хватает?
Используя Red5 1.0.1, кстати. Я вижу, что многие ошибки, связанные с кодировкой AMF3, были исправлены в версии .7. Кроме того, прямо сейчас просто тестирую локально на машине с Windows 7.
registerClassAlias
. - person strip-arcade.com   schedule 24.05.2013Player
класса (и любых классов внутри этих классов), вы уверены, что делаете это? У меня нет опыта работы с Red5, поэтому, если проблема заключается в этом, кто-то другой должен будет прокомментировать - person BadFeelingAboutThis   schedule 25.05.2013