Faz um teste dando um return "Erro qualquer" no C# e veja se chega no flex.
Se chegar o problema é de fato com a exception, mesmo se mesmo assim continuar dando erro, tem que procurar a real causa. Em 7 de fevereiro de 2012 11:50, Carolina <[email protected]> escreveu: > ta, mas ai como que eu mostro amigavelmente pro usuário? como por ex, > que ele deixou uma célula em branco sendo que ela era obrigatória? > > muito obrigada pela atenção pessoal > > On Feb 7, 11:47 am, Tonussi Eric <[email protected]> wrote: > > Você não pode usar o throw new Exception. Isso é que está causando o > erro. > > Se você quiser usar, você tem que tratar esse Exeption no próprio C#. > > > > -- > > @Tonussi > > tonussi.com <http://tonussi.com/> > > > > Em 7 de fevereiro de 2012 11:44, Carolina <[email protected]> > escreveu: > > > > > > > > > > > > > > > > > Então Fernando, não estou conseguindo usar o tal do FaultEvent que > > > todo mundo me fala rsrs tentei usar como o Piero falou, o Tonussi > > > disse pra eu usar tbm, usando o ResultEvent mesmo > > > só que mesmo assim não tive sucesso =( > > > > > On Feb 7, 11:32 am, Fernando Noronha <[email protected]> wrote: > > > > Carolina, toda vez que cai em algum exception do C# ( throw new > > > Exception), > > > > imediatamente retorna um faultEvent para o Flex, voce vai ter que > tratar > > > > essas exceptoins de outra forma. > > > > > > -- > > > > Fernando Noronha > > > > > > Em 7 de fevereiro de 2012 11:25, Carolina <[email protected]> > > > escreveu: > > > > > > > Então Fernando, como eu estou fazendo um import de excel para o > banco > > > > > de dados > > > > > no c# eu coloca algumas exception para tratar com msg amigaveis > > > > > > > por ex: o usuario deixa no excel um campo vazio, sendo que no > banco é > > > > > notnull > > > > > eu coloquei uma exception esse momento dizerndo que existem > parametros > > > > > invalidos > > > > > em outros casos fala que a busca nao retornou resultdo pelo > paramentro > > > > > passado etc... > > > > > > > if (oDR["Razão Social"].ToString() == "" || > oDR["Email"].ToString() > > > > > == "") > > > > > { > > > > > cons.fechaConsulta(); > > > > > throw new Exception("Parametros Invalidos"); > > > > > } > > > > > > > if (achouTipo == false) > > > > > { > > > > > cons.fechaConsulta(); > > > > > throw new Exception("Não existe o Tipo de > Contratação > > > > > " + oDR["Tipo de Contratação"].ToString()); > > > > > } > > > > > > > On Feb 7, 11:13 am, Fernando Noronha <[email protected]> wrote: > > > > > > Cole o try catch do C# para a gente dar uma olhada. > > > > > > > > -- > > > > > > Fernando Noronha > > > > > > > > Em 7 de fevereiro de 2012 11:07, Carolina <[email protected]> > > > > > escreveu: > > > > > > > > > aquela janela de ActionScript Error > > > > > > > > > SecurityError: Error #2000: No active security context. > > > > > > > > > =( > > > > > > > > > On Feb 7, 10:57 am, Tonussi Eric <[email protected]> > wrote: > > > > > > > > Que erro é? Um alert ou aquele janela de Debug? > > > > > > > > > > -- > > > > > > > > @Tonussi > > > > > > > > tonussi.com <http://tonussi.com/> > > > > > > > > > > Em 7 de fevereiro de 2012 10:51, Carolina < > [email protected]> > > > > > > > escreveu: > > > > > > > > > > > *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. > > > > ... > > > > read more » > > -- > 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 > -- Danilo Suares celular: +55 11 7389-6831 skype/msn/gtalk: [email protected] twitter: @danilosuares Esta mensagem pode conter informacao confidencial e/ou privilegiada. Se você não for o destinatário ou a pessoa autorizada a receber esta mensagem, não pode usar, copiar ou divulgar as informacoes nela contidas ou tomar qualquer acao baseada nessas informacoes. Se voce recebeu esta mensagem por engano, por favor avise imediatamente o remetente, respondendo o e-mail e em seguida apague-o. Agradecemos sua cooperacao. This message may contain confidential and/or privileged information. If you are not the addressee or authorized to receive this for the addressee, you must not use, copy, disclose or take any action based on this message or any information herein. If you have received this message in error, please advise the sender immediately by reply e-mail and delete this message. Thank you for your cooperation. -- 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
