2012-05-07 2 views
0

У меня есть гибкий мобильный клиент, и он принимает Java-сервер byte[], как flash.utils.ByteArray, но когда я хочу использовать в качестве источника моего BitmapImage компилятор говорит, что неизвестный тип:Java байт [] для Flex источника BitmapImage

private function onResult3(event:ResultEvent,token:Object):void 
{ 
    if(event.result!=null) 
    { 
     var Lder:Loader=new Loader(); 
     var ba:ByteArray=event.result as ByteArray; 
     Lder.loadBytes(ba);// exception is thrown here 
     doktorResim.bitmapData.draw(Lder);     
    } 

} 

Любая помощь, предложение?

+0

Что такое исключение? Является ли «ba» нулевым после преобразования? Вы прошли через код? – JeffryHouser

+0

ba не является нулевым после преобразования, он имеет длину, это нормально. Я думаю, что проблема заключается в том, что загрузчик не мог распознать структуру ba. база данных - оракул, сервер отправляет в качестве байта [] для гибкого байтового байта мобильного клиента. – Coenni

+0

Зачем? Просьба предоставить полную трассировку стека. – JeffryHouser

ответ

1

Если Java читает и посылает байт правильно, то вам нужно ждать прогибается, чтобы загрузить все байты для Thats использовать событие complete из LoaderInfo смотрите также Loader Класс

var url:String = "http://www.helpexamples.com/flash/images/image2.jpg"; 
var urlRequest:URLRequest = new URLRequest(url); 
var loader:Loader = new Loader(); 
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loader_complete); 
loader.load(urlRequest); 
addChild(loader); 

function loader_complete(evt:Event):void { 
    var target_mc:Loader = evt.currentTarget.loader as Loader; 
    target_mc.x = (stage.stageWidth - target_mc.width)/2; 
    target_mc.y = (stage.stageHeight - target_mc.height)/2; 
} 

надеется, что помогает

+0

Ошибка является другой. В результате у меня есть byteArray. И его размер такой же, как в java-сервере. но когда я вызываю loader.loadBytes (resultBytes); исключение: «Ошибка # 2044: необработанный IOErrorEvent :. text = Ошибка # 2124: Загруженный файл неизвестный тип». бросается. И пока я не нашел решения проблемы. – Coenni

+0

Вы добавили прослушиватель событий Complete, также показываете свой Java-код, можете ли вы записать файл на диск из базы данных с помощью JAVA? – Imran

+0

Это связано с библиотекой BlazeDs, которую я использую между Java Server и мобильными платформами Flex. Я читал содержимое каждого байтового массива, как будто «66 22 77 ...» в стороне гибкого диска sthe stange, как «BMá ...» – Coenni