Obrigada pela paciência Tonussi,

usei como vc falou, mas ele nem chega a entrar no metodo handler, e já
mostra a caixa de erro, o que será que eu estou esquecendo?

obrigada


On Feb 7, 10:17 am, Tonussi Eric <[email protected]> wrote:
> Não é pra pegar o FaultEvent, e sim o ResultEvent mesmo. Algo mais ou menos
> assim:
>
> server:
>
> try {
>
>
>
> >   var usuario:User = getUser( 1 );
>
> >   return "<usuario><id>$usuario.id</id><name>$usuario.name
> > </name></usuario>";
>
> > } catch ( e:Error ) {
>
> >   return "<error>Erro ao recuperar usuário</error>";
>
> > }
>
> Flex
>
> function handler( e:ResultEvent ):void {
>
>
>
> >   var xml:XML = parseXML( e );
>
> >   if ( xml.error ) {
>
> >     trace( xml.erro );
>
> >   } else {
>
> >     registraUser( xml.usuario );
>
> >   }
>
> > }
>
> Abraços
>
> --
> @Tonussi
> tonussi.com <http://tonussi.com/>
>
> Em 7 de fevereiro de 2012 10:06, Carolina <[email protected]> escreveu:
>
>
>
>
>
>
>
> > então, mas ai se eu usar direto assim:
>
> > function(evt:FaultEvent):void
> > {
> > }
>
> > Ele abre aquela caixa de erro nada amigável pro usuário e mesmo assim,
> > nao mostra a msg de erro que eu tratei no c#
>
> > On Feb 7, 9:54 am, Tonussi Eric <[email protected]> wrote:
> > > Você vai usar da forma que já usa, só vai tratar o resultado
>
> > > --
> > > @Tonussi
> > > tonussi.com <http://tonussi.com/>
>
> > > Em 7 de fevereiro de 2012 09:52, Carolina <[email protected]>
> > escreveu:
>
> > > > Mas Tonussi, por qual evento eu pego no Flex esse XML?
> > > > como por ex lá na minha chamada de metodo
>
> > > > fr.addEventListener( --- XML??? ---, chamaClasseErro);
>
> > > > Obrigada
>
> > > > On Feb 2, 5:03 pm, Tonussi Eric <[email protected]> wrote:
> > > > > Por exemplo, se a resposta do seu serviço for um XML, você envia o
> > > > seguinte
> > > > > XML:
>
> > > > > <result>
>
> > > > > >   <sucess>0</sucess>
> > > > > >   <error_msg>Impossivel abrei o aquivo</error_msg>
> > > > > > </result>
>
> > > > > e no AS:
>
> > > > > if ( xml.result.sucess == 1 ) {
>
> > > > > >   trace( 'sucesso!!' );
> > > > > > } else {
> > > > > >   trace( xml.result.error_msg );
> > > > > > }
>
> > > > > --
> > > > >  @Tonussi
> > > > > tonussi.com <http://tonussi.com/>
>
> > > > > Em 2 de fevereiro de 2012 15:19, Fabrício Carvalho <
> > > > > [email protected]> escreveu:
>
> > > > > > Fala ai tonussi, o que seria um objeto que o flex entende como
> > erro ?
>
> > > > > > Estou com o mesmo problema.
>
> > > > > > Em 2 de fevereiro de 2012 14:40, Tonussi Eric <
> > [email protected]
> > > > >escreveu:
>
> > > > > > Na verdade, o fault só vai ser chamado quando houver um erro de
> > > > conexão.
> > > > > >> Se você teve um erro no C#, você captura ele no próprio C# e
> > retorna
> > > > para o
> > > > > >> Flex um objeto que ele entenda como um erro.
>
> > > > > >> --
> > > > > >>  @Tonussi
> > > > > >> tonussi.com <http://tonussi.com/>
>
> > > > > >> Em 2 de fevereiro de 2012 13:00, Carolina <[email protected]
> > > > >escreveu:
>
> > > > > >>> On Jan 31, 8:22 am, Carolina <[email protected]> wrote:
> > > > > >>> > Olá Piero
>
> > > > > >>> > então eu usei assim
>
> > > > > >>> > fr.addEventListener(FaultEvent.FAULT, chamaClasseErro);
>
> > > > > >>> > esse fr é o fileReference
>
> > > > > >>> > e a chamada de metodo com o erro seria:
>
> > > > > >>> > public function chamaClasseErro (event:FaultEvent):void
> > > > > >>> > {
> > > > > >>> >    //tratar erro
>
> > > > > >>> > }
>
> > > > > >>> > só que quando da aExceptionno C# ele não volta nesse método
> > ai, ele
> > > > > >>> > joga direto o erro na tela;
> > > > > >>> > quando eu usava IOErrorEvent ele chamava o metodo
> > corretamente, só
> > > > que
> > > > > >>> > sempre chegava erro 2038 I/O
>
> > > > > >>> > o que falta pro listener chamar o método certo?
>
> > > > > >>> > Obrigada
>
> > > > > >>> > On Jan 30, 5:14 pm, Piero Brito <[email protected]> wrote:
>
> > > > > >>> > > Faça o importa da classe
> > > > > >>> > > import mx.rpc.events.FaultEvent;
>
> > > > > >>> > > Eu uso assim:
>
> > > > > >>> > > BuscarServidor.addEventListener(FaultEvent.FAULT,
> > > > > >>> > > function(evt:FaultEvent):void
> > > > > >>> > > {
>
> > > > > >>> > > }
>
> > > > > >>> > > Em 30 de janeiro de 2012 16:56, Carolina <
> > [email protected]>
> > > > > >>> escreveu:
>
> > > > > >>> > > > Olá Piero
>
> > > > > >>> > > > seria?
> > > > > >>> > > >        fr.addEventListener(flash.events.FaultEvent,
> > > > erroHandler);
>
> > > > > >>> > > > porem ele da erro Access of undefined property FaultEvent
> > > > > >>> > > > qual import usar?
> > > > > >>> > > > vc tem um exemplo ai de como usar o FaultEvent?
>
> > > > > >>> > > > Obrigada =)
>
> > > > > >>> > > > On Jan 30, 4:47 pm, Piero Brito <[email protected]> wrote:
> > > > > >>> > > > > Tenta usar o FaultEvent
>
> > > > > >>> > > > > Em 30 de janeiro de 2012 16:46, Carolina <
> > > > [email protected]>
> > > > > >>> > > > escreveu:
>
> > > > > >>> > > > > > Olá,
>
> > > > > >>> > > > > > estou criando uma estrutura para importar excel.
> > > > > >>> > > > > > ela já importa, porem quero criar um tratamento de
> > exceções
>
> > > > > >>> > > > > > no meu backend (em C#) tenho algo assim:
> > > > > >>> > > > > >                   try
> > > > > >>> > > > > >                        {
>
> > > > > >>> > > > > >                                strSQL =
> > > > > >>> > > > > > update(dsExc.Tables[nomePlan].Rows[i]);
> > > > > >>> > > > > >                                cons.ConsultaSQL(strSQL,
> > > > > >>> strConexao);
>
> > > > > >>> > > > > >                        }
> > > > > >>> > > > > >                        catch (Exceptionex)
> > > > > >>> > > > > >                        {
> > > > > >>> > > > > >                            throw
> > newException(ex.Message);
> > > > > >>> > > > > >                            cons.fechaConsulta();
> > > > > >>> > > > > >                        }
>
> > > > > >>> > > > > > quero tratar essa mensagem no flex
> > > > > >>> > > > > > e tentei usar algo assim
>
> > > > > >>> > > > > > fr.addEventListener(flash.events.IOErrorEvent.IO_ERROR,
> > > > > >>> erroHandler);
>
> > > > > >>> > > > > >        private function
> > erroHandler(event:ErrorEvent):void
> > > > > >>> > > > > >                {
> > > > > >>> > > > > >                        var strErro:String = event.text;
> > > > > >>> > > > > >                        chamaTratarErro(strErro);
> > > > > >>> > > > > >                }
>
> > > > > >>> > > > > > nesse método para tratar erro, queria fazer um if para
> > > > > >>> verificação e
> > > > > >>> > > > > > mostrar msg mais amigáveis pro usuário como por ex:
> > > > > >>> > > > > > "Erro de conexão com banco de dados"
> > > > > >>> > > > > > "Campos inválidos no excel"
> > > > > >>> > > > > > "Tipo de arquivo invalido"
>
> > > > > >>> > > > > > porem no ErroEvent vem sempre o mesmo erro #2038 I/O
> > ....
> > > > > >>> > > > > > gostaria de saber pegar o erro certo no listener?
>
> > > > > >>> > > > > > Obrigada!
>
> > > > > >>> > > > > > --
> > > > > >>> > > > > > Você recebeu esta mensagem porque está inscrito na
> > lista
> > > > > >>> "flexdev"
> > > > > >>> > > > > > Para enviar uma mensagem, envie um e-mail para
> > > > > >>> > > > [email protected]
> > > > > >>> > > > > > Para sair da lista, envie um email em branco para
> > > > > >>> > > > > > [email protected]
> > > > > >>> > > > > > Mais opções estão disponíveis emhttp://
> > > > > >>> groups.google.com/group/flexdev
>
> > > > > >>> > > > > --
>
> > > > > >>> > > > > *Piero Brito
> > > > > >>> > > > > **Analista de Sistemas*
>
> > > > > >>> > > > --
> > > > > >>> > > > Você recebeu esta mensagem porque está inscrito na lista
> > > > "flexdev"
> > > > > >>> > > > Para enviar uma mensagem, envie um e-mail para
> > > > > >>> [email protected]
> > > > > >>> > > > Para sair da lista, envie um email em branco para
> > > > > >>> > > > [email protected]
> > > > > >>> > > > Mais opções estão disponíveis emhttp://
> > > > > >>> groups.google.com/group/flexdev
>
> > > > > >>> > > --
>
> > > > > >>> > > *Piero Brito
> > > > > >>> > > **Analista de Sistemas*
>
> > > > > >>> --
> > > > > >>> Você recebeu esta mensagem porque está inscrito na lista
> > "flexdev"
> > > > > >>> Para enviar uma mensagem, envie um e-mail para
> > > > [email protected]
> > > > > >>> Para sair da lista, envie um email em branco para
> > > > > >>> [email protected]
> > > > > >>> Mais opções estão disponíveis emhttp://
> > > > groups.google.com/group/flexdev
>
> > > > > >>  --
> > > > > >> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> > > > > >> Para enviar uma mensagem, envie um e-mail para
> > > > [email protected]
> > > > > >> Para sair da lista, envie um email em branco para
> > > > > >> [email protected]
> > > > > >> Mais opções estão disponíveis emhttp://
> > > > groups.google.com/group/flexdev
>
> > > > > > --
> > > > > > Att,
> > > > > > Fabrício
>
> > > > > > --
> > > > > > Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> > > > > > Para enviar uma mensagem, envie um e-mail para
> > > > [email protected]
> > > > > > Para sair da lista, envie um email em branco para
> > > > > > [email protected]
> > > > > > Mais opções estão disponíveis emhttp://
> > groups.google.com/group/flexdev
>
> > > > --
> > > > Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> > > > Para enviar uma mensagem, envie um e-mail para
> > [email protected]
> > > > Para sair da lista, envie um email em branco para
> > > > [email protected]
> > > > Mais opções estão disponíveis emhttp://groups.google.com/group/flexdev
>
> > --
> > Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> > Para enviar uma mensagem, envie um e-mail para [email protected]
> > Para sair da lista, envie um email em branco para
> > [email protected]
> > Mais opções estão disponíveis emhttp://groups.google.com/group/flexdev

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

Responder a