Tenho uma aplicação flex que carrega um arquivo xml e mostra os dados na tela do navegador. Resumindo, tenho um html rodando em servidor tomcat, este chama a página flex que carrega o arquivo xml. O nome do arquivo é passado como parâmetro na URL.
após eu chamar esta página através de link, é apresentado o erro #2032 rodando o tomcat pelo netbeans. Em outro servidor o oficial, é chamado em php e aparece o erro #2048, mas a situação é a mesma.
Alguém saberia o que acontece e como corrijo isto?
Juceli,
Poderia mandar as mensagens destes erros e / ou o código.
Adiantando, por questões de segurança o Flash Player por default não consegue acessar arquivos q estejam em outro host. Se o teu xml estiver em outro endereço diferente de onde está o swf, pode dar erro de Security.
[]s
juceliohv
bom dia Fabiophx,
segue código principal.
Observação, quando rodo no flexbuilder, funciona perfeitamente. Porém quando rodo no firefox com servidor tomcat, ocorre o erro.
<?xmlversion="1.0"encoding="utf-8"?><mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"layout="absolute"xmlns:ns1="*"creationComplete="callLater(complete)"><mx:Script><![CDATA[importmx.controls.Alert;importmx.managers.BrowserManager;importmx.managers.IBrowserManager;importmx.messaging.SubscriptionInfo;privatevarloader:URLStream;privatevarbrowserManager:IBrowserManager;privatefunctioncomplete():void{varfilename:String;browserManager=BrowserManager.getInstance();browserManager.init();filename=browserManager.url;vartamanho:int=filename.length;varindice:int=filename.indexOf("=",0)+1;varparametro:String=filename.substr(indice,int.MAX_VALUE).replace("#","");if(parametro==null||parametro==""||parametro=="null"||indice==0){Alert.show("Não foi possivel ler os dados, verifique se o browser possui JavaScript habilitado ou se existe arquivo informado","Erro",4,parentApplicationasSprite);return;}cursorManager.setBusyCursor();loader=newURLStream();loader.addEventListener(ProgressEvent.PROGRESS,progressHandler);loader.addEventListener(Event.COMPLETE,loaderResultHandler);loader.addEventListener(IOErrorEvent.IO_ERROR,errorHandler);loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR,errorHandler)varrequest:URLRequest=newURLRequest(parametro);trace(browserManager.url);trace(parametro);try{loader.load(request);}catch(error:Error){Alert.show("Não foi possivel ler a URL, verifique se o browser possui JavaScrip habilitado");cursorManager.removeBusyCursor();}}privatefunctionprogressHandler(evt:ProgressEvent):void{progresso.text="Lidos: "+evt.bytesLoaded.toString()+" de "+evt.bytesTotal.toString();}privatefunctionloaderResultHandler(event:Event):void{varba:ByteArray=newByteArray();loader.readBytes(ba);loader.close();ba.uncompress();main.sped=newXML(ba.toString());cursorManager.removeBusyCursor();progresso.text="";}privatefunctionerrorHandler(event:ErrorEvent):void{Alert.show(event.text,"Erro ao carregar os dados");}]]></mx:Script><ns1:Mainleft="10"right="10"top="10"bottom="10"id="main"></ns1:Main><mx:Textid="progresso"text="Lendo dados..."bottom="20"left="20"/></mx:Application>
Juceli,
Mas o xml q vc está acessando é de outro domínio diferente daquele onde está o swf? Pq se for diferentes dará o mesmo erro de segurança independente de forma de comunicação.