é nessas horas que entra a tal palavra proxy...

bom nesse caso, acessar diretamente o WS pelo Flex devido as normas de
segurança estabelecidas pela Adobe complica a vida
então você implementa no back-end da sua aplicação o meio de campo, para
através do seu back-end acessar o WS

ps.: cara o estrutura de retorno desse WS hauhauahuahu
testei aqui no back-end em java

bom se vc usar java ae, faz uma classe serviço mapeada no BlazeDS e de lá
você
acessa o WS via AXIS e tudo certo ;)

se usar outra tecnologia de back-end, só procurar algum suporte para o seu
back-end e acessar
o WS através dele, te garando que vai ser mais rapido do que tentar achar um
outro meio de acessar
o WS diretamente pelo Flex =]

2009/5/28 Julio Carneiro <jjcarne...@gmail.com>

>
> Tem... a diferença é no security sandbox do Flash Player.
> Como eu informei num de meus replies, a aplicação só rodaria direto do
> FB, isto é, qdo o URI fosse "file:///...".
>
> O esquema de segurança do Flash Player trata de modo diferente URI's
> do tipo "file:///...". Nestes casos ele não faz validação de
> crossdomain. É o que permite testar aplicações Flex sem necessidade de
> controle de crossdomain.
>
> Já quando vc form 'deploy' a aplicação em um servidor, isto é, quando
> o acesso for via um URI tipo "http://..";, o FP irá validadar qualquer
> acesso que cruze domínios.
> Por isso, quando vc roda a aplicação no myeclipse, o URI é algo como
> http://localhost... Neste caso, ao tentar acessar um webservice em
> outro domínio (o do cep) o FP busca um arquivo crossdomain.xml lá para
> validar o acesso. Portanto se não tem crossdomain lá, ou se o
> crossdomain existente não permite acesso, vc vai receber o erro de
> 'security sandbox violation, blah blah...'.
>
> Se vc não tem contrôle sobre o site que está tentando acessar,
> esquece. Tua aplicação só vai rodar neste ambiente de teste mesmo...
>
> julio
>
> On May 28, 1:10 am, Bruno Ricciardi <brunoriccia...@gmail.com> wrote:
> > acabei de achar o pq de estar dando erro, embora nao veja logica
> nisso....
> >
> > qndo eu rodo o codigo no flex builder 3, funciona
> >
> > se eu ridar no myeclipse 7.1 com o plugin do flex completo, ele dah esse
> > erro de segurança...
> >
> > tem alguma logica do pq disso??
> >
> > 2009/5/28 Bruno Ricciardi <brunoriccia...@gmail.com>
> >
> > > Qndo eu coloco exatamente esse codigo pra rodar me aparece uma mensagem
> > > dizendo :
> >
> > > "Security error accessing url"
> >
> > > gente foi crtl+c + ctrl+v....
> >
> > > como pode dar diferença no resultado???
> >
> > > <?xml version="1.0"?>
> > > <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
> > > creationComplete="onCreationComplete()">
> > >     <mx:Script>
> > >         <![CDATA[
> > >             import mx.controls.Alert;
> > >             import mx.rpc.events.ResultEvent;
> > >             import mx.rpc.events.FaultEvent;
> > >             import mx.rpc.soap.mxml.WebService;
> > >             private var ws:mx.rpc.soap.mxml.WebService;
> > >             private var getMyInfoRequest:String = "22710325";
> > >             public function onCreationComplete():void
> > >             {
> > >                 ws = new mx.rpc.soap.mxml.WebService();
> > >                 //ws.endpointURI = "http://myserver.com/myService.php";;
> //
> > > comentada pois o URI está errado e não é necessário
> > >                 ws.loadWSDL("
> > >http://www.bronzebusiness.com.br/webservices/wscep.asmx?wsdl";);
> > >                 ws.addEventListener(FaultEvent.FAULT, faultHandler);
> > >                 ws.addEventListener(ResultEvent.RESULT,
> > > resultHandler);
> > >              }
> > >             public function resultHandler(event:ResultEvent):void
> > >             {
> > >                var resposta:Object = event.result.Tables.tbCEP.Rows[0];
>  //
> > > pega a resposta do CEP corretamente.
> > >                 Alert.show(resposta.logradouro+" "+resposta.nome+" -
> > > "+resposta.bairro+"\r"+resposta.cidade+", "+resposta.UF);
> > >             }
> > >             public function faultHandler(event:FaultEvent):void
> > >             {
> > >                 Alert.show(event.fault.faultString);
> > >             }
> > >             public function runRequest():void
> > >             {
> > >                 ws.cep(getMyInfoRequest);
> > >             }
> > >         ]]>
> > >     </mx:Script>
> > >     <mx:Button label="RunRequest" click="runRequest()"/>
> > > </mx:Application>
> >
> > > 2009/5/27 Júniorp <juniorparmigi...@gmail.com>
> >
> > >> Obrigado Julio, agora funionou perfeitamente não sei o porque o teste
> > >> que fiz anteriormente de problema.
> >
> > >> Abraços.
> >
> > >> ====================================
> > >> Ednei Parmigiani Júnior
> > >> Araçatuba - SP
> > >> E-mail/MSN: junior_parmigi...@hotmail.com
> > >> ====================================
> >
> > >> On 27 maio, 12:32, Julio Carneiro <jjcarne...@gmail.com> wrote:
> > >> > Ednei,
> >
> > >> > Eu usei o mesmo código do Bruno com um único ajuste, comentar a
> linha
> > >> > em que ele estava setando o endpointURI:
> > >> > // ws.endpointURI = "http://myserver.com/myService.php";;
> >
> > >> > Este não é o endPoint daquele serviço do CEP. Fiz só um outro ajuste
> > >> > no tratamento do resultado pois o código original não trava
> > >> > corretamente a resposta do CEP.
> >
> > >> > De qualquer maneira aí vai:
> >
> > >> > <?xml version="1.0"?>
> > >> > <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
> > >> > creationComplete="onCreationComplete()">
> > >> >      <mx:Script>
> > >> >          <![CDATA[
> > >> >              import mx.controls.Alert;
> > >> >              import mx.rpc.events.ResultEvent;
> > >> >              import mx.rpc.events.FaultEvent;
> > >> >              import mx.rpc.soap.mxml.WebService;
> > >> >              private var ws:mx.rpc.soap.mxml.WebService;
> > >> >              private var getMyInfoRequest:String = "22710325";
> > >> >              public function onCreationComplete():void
> > >> >              {
> > >> >                  ws = new mx.rpc.soap.mxml.WebService();
> > >> >                  //ws.endpointURI = "http://myserver.com/
> > >> > myService.php"; // comentada pois o URI está errado e não é
> necessário
> > >> >                  ws.loadWSDL("http://www.bronzebusiness.com.br/
> > >> > webservices/wscep.asmx?wsdl");
> > >> >                  ws.addEventListener(FaultEvent.FAULT,
> faultHandler);
> > >> >                  ws.addEventListener(ResultEvent.RESULT,
> > >> > resultHandler);
> > >> >               }
> > >> >              public function resultHandler(event:ResultEvent):void
> > >> >              {
> > >> >                 var resposta:Object = event.result.Tables.tbCEP.Rows
> > >> > [0];  // pega a resposta do CEP corretamente.
> > >> >                  Alert.show(resposta.logradouro+" "+resposta.nome+"
> -
> > >> > "+resposta.bairro+"\r"+resposta.cidade+", "+resposta.UF);
> > >> >              }
> > >> >              public function faultHandler(event:FaultEvent):void
> > >> >              {
> > >> >                  Alert.show(event.fault.faultString);
> > >> >              }
> > >> >              public function runRequest():void
> > >> >              {
> > >> >                  ws.cep(getMyInfoRequest);
> > >> >              }
> > >> >          ]]>
> > >> >      </mx:Script>
> > >> >      <mx:Button label="RunRequest" click="runRequest()"/>
> > >> > </mx:Application>
> >
> > >> > On May 27, 8:17 am, Júniorp <juniorparmigi...@gmail.com> wrote:
> >
> > >> > > Caro Julio Carneiro, teria como vc postar aqui sua app que tu
> consumiu
> > >> > > o WS que consultou CEP
> > >> > > com sucesso, compartilhe conosco, pois tentei com o código do
> Bruno e
> > >> > > não consegui.
> >
> > >> > > abraços
> >
> > >> > > ====================================
> > >> > > Ednei Parmigiani Júnior
> > >> > > Araçatuba - SP
> > >> > > E-mail/MSN: junior_parmigi...@hotmail.com
> > >> > > ====================================
> >
> > >> > > On 26 maio, 18:05, Julio Carneiro <jjcarne...@gmail.com> wrote:
> >
> > >> > > > Bruno,
> >
> > >> > > > Veja minhas respostas... nada a ver com crossdomain, a não ser
> que
> > >> vc
> > >> > > > rode a aplicação a partir de um servidor. Rodando local a partir
> do
> > >> > > > Flex builder (file:///...) não tem problema de crossdomain.
> >
> > >> > > > EU consigo consultar CEP daqui sem problemas, usando teu código
> com
> > >> > > > minhas correções
> >
> > >> > > > []
> > >> > > > julio
> >
> > >> > > > On May 26, 5:46 pm, Bruno <brunoriccia...@gmail.com> wrote:
> >
> > >> > > > > Gente, vcs nao vao acreditar, mas o problema esta no cross
> domain.
> >
> > >> > > > > a questao eh que estou testando com webservices que sao
> publicos,
> > >> ou
> > >> > > > > seja, nao tem como eu disponibilizar o arquivo de crossdomain
> > >> dentro
> > >> > > > > do servidor do WS...
> >
> > >> > > > > tem alguma saida local que resolva isso?? minha aplicaçao nao
> esta
> > >> > > > > sobre nenhum servidor de aplicacao, somente local...
> >
> > >> > > > > On 26 maio, 16:01, Júniorp <juniorparmigi...@gmail.com>
> wrote:
> >
> > >> > > > > > Caro Bruno.
> > >> > > > > > Entre no link abaixo,  baixe e instale a aplicações Tour de
> Flex
> > >> > > > > > component explorer (TourDeFlex.air), nesta aplicação
> > >> > > > > > tem vários exemplos e aplicações em flex, inclusive consumo
> de
> > >> WS.
> >
> > >> > > > > > Link:http://www.adobe.com/devnet/flex/tourdeflex/
> >
> > >> > > > > > Bons estudos, Abraços
> >
> > >> > > > > > ====================================
> > >> > > > > > Ednei Parmigiani Júnior
> > >> > > > > > Araçatuba - SP
> > >> > > > > > E-mail/MSN: junior_parmigi...@hotmail.com
> > >> > > > > > ====================================
> >
> > >> > > > > > On 26 maio, 14:48, Bruno Ricciardi <
> brunoriccia...@gmail.com>
> > >> wrote:
> >
> > >> > > > > > > Poderia ter algo haver com o tal de cross domain??
> >
> > >> > > > > > > 2009/5/26 Bruno <brunoriccia...@gmail.com>
> >
> > >> > > > > > > > Aiinda teria esse terceiro codigo que tbm retorna o
> mesmo
> > >> erro:
> >
> > >> > > > > > > > <?xml version="1.0" encoding="utf-8"?>
> > >> > > > > > > > <mx:Application xmlns:mx="
> http://www.adobe.com/2006/mxml";
> > >> > > > > > > > creationComplete="xMIIData.Xacute.send()">
> > >> > > > > > > >        <mx:Script>
> > >> > > > > > > >                <![CDATA[
> > >> > > > > > > >                        import mx.events.ListEvent;
> > >> > > > > > > >                        import mx.events.ItemClickEvent;
> > >> > > > > > > >                        import
> > >> mx.collections.ArrayCollection;
> > >> > > > > > > >                         import mx.controls.Alert;
> > >> > > > > > > >                        import mx.rpc.events.ResultEvent;
> >
> > >> > > > > > > >                         [Bindable]
> > >> > > > > > > >                        public var
> > >> pieChartDP:ArrayCollection;
> > >> > > > > > > >                        [Bindable]
> > >> > > > > > > >                        public var
> > >> xMIITrxData:ArrayCollection;
> > >> > > > > > > >                        [Bindable]
> > >> > > > > > > >                        public var radiusArr:Array =
> > >> [0,.1,0]; //explode
> > >> > > > > > > > Radius
> >
> > >> > > > > > > >                        //      Event Handler for
> 'Result'
> > >> Event of
> > >> > > > > > > > WebService
> > >> > > > > > > >                        public function
> > >> dataArrived(e:ResultEvent):void{
> > >> > > > > > > >                                xMIITrxData =
> > >> > > > > > > > xMIIData.Xacute.lastResult.Rowset;
> > >> > > > > > > >                                createPieChartDP(0);
> > >> > > > > > > >                        }
> >
> > >> > > > > > > >                        //Creating DataProvider for
> PieChart
> > >> > > > > > > >                        public function
> > >> > > > > > > > createPieChartDP(selectedRow:int):void{
> > >> > > > > > > >                                var obj:Object =
> > >> > > > > > > > xMIITrxData.getItemAt(selectedRow);
> > >> > > > > > > >                                pieChartDP = new
> > >> ArrayCollection();
> >
> > >>  pieChartDP.addItem({ParamName:"Performance",
> > >> > > > > > > > Value:obj.L1Performance});
> >
> > >> > > > > > > >  pieChartDP.addItem({ParamName:"Availability",
> > >> > > > > > > > Value:obj.L1Availability});
> >
> > >>  pieChartDP.addItem({ParamName:"Quality",
> > >> > > > > > > > Value:obj.L1Quality});
> >
> > ...
> >
> > read more »
> >
>


-- 
Att,
Erko Bridee de Almeida Cabrera
http://erkobridee.com/
http://gospel.erkobridee.com/
http://www.cwbfx.com/
http://www.portaljava.com/

--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para 
flexdev-unsubscr...@googlegroups.com
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---

Responder a