XARÁ tente fazer um relatório com o XViewer usando Elementos Gráficos !!! quando testei deu erro. dá uma olhada aê. !!
-- **************************************************** www.brunobg.com bruno...@ig.com.br (MSN & Skype) blogflex.brunobg.com @brunogrohs (21) 9913-2397 Em 20 de outubro de 2010 15:52, Bruno Ribeiro <brunohanu...@gmail.com>escreveu: > Achei um tutorial na net que usa um "visualizador" de relatório dentro do > flex Flex. > > É só passar o xml. > > Criei um servlet que está gerando o xml no browse. E agora estou tentando > visualizar no flex. Abaixo o código. > > > *Chamada do formulário principal: * > var relatorio : xViewerSample = > xViewerSample(PopUpManager.createPopUp(this, xViewerSample, true)); > PopUpManager.centerPopUp(relatorio); > > > *Código do MXML* > > <?xml version="1.0" encoding="utf-8"?> > <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" > xmlns:s="library://ns.adobe.com/flex/spark" > xmlns:jrv="com.jaspersoft.reports.viewer.*" > xmlns:valueObjects="valueObjects.*" > xmlns:services="services.*" > xmlns:mx="library://ns.adobe.com/flex/mx" > > > <mx:Canvas left="20" right="20" top="20" bottom="8" > borderStyle="solid" creationComplete="{httpService(event)}"> > <jrv:Viewer id="viewer" label="teste"/> > </mx:Canvas> > > > > <fx:Script> > <![CDATA[ > import mx.rpc.events.FaultEvent; > import mx.rpc.events.ResultEvent; > import mx.controls.Alert; > import mx.rpc.http.HTTPService; > /** > * Variavel que guarda um XML recebido por uma requisicao > > */ > [Bindable] > private var xmlData:XML = null; > > > /** > * @description Esta funcao e' responsa'vel pela geracao da > visualizacao > * do relatorio > * @return void > */ > private function viewReport():void { > viewer.disableJasperServer(); > viewer.showClassicToolbar(); > viewer.showReport(xmlData); > } > /** > * @description Esta funcao manipula o resultado da requisicao > * conventendo este resultado em um xml > * @param ResultEvent - Evento lancado pelo metodo > HTTPService.send() > * caso a requisicao obteve > sucesso > */ > private function resultHandler(event:ResultEvent):void{ > xmlData = event.result as XML; > this.viewReport(); > } > /** > * @description Esta funcao mostra um alerta caso ocorra algum > erro durante > * a requisicao > * @param FaultEvent - Evento lancado pelo metodo > HTTPService.send() > * em caso a requisicao falhar > */ > private function failRequest(event:FaultEvent):void{ > Alert.show("Ops! Houve algum erro ao processar a > REQUISIÇÃO."); > } > /** > * @description Esta funcao realiza uma requisicao HTTP > * @param Event - Evento lancado por alguma acao qualquer. > Neste > contexto > * e um evento lancado por um Combobox que lista os relatorios > * disponiveis ao usuario. > */ > private function httpService(event:Event):void{ > var httpService:HTTPService = new HTTPService(); > httpService.url= "http://localhost:8080/guia/servletGuia" > httpService.resultFormat = "e4x"; > httpService.addEventListener(ResultEvent.RESULT, > this.resultHandler); > httpService.addEventListener(FaultEvent.FAULT, > this.failRequest); > > httpService.send(); > } > ]]> > </fx:Script> > </s:Application> > > > > > Em 19 de outubro de 2010 13:57, Roger Rayner Cunha Bento < > roger.ray...@totvs.com.br> escreveu: > >> Use Servlet.... eu faço a chamada assim... a servlet vc parametriza no >> web.xml conforme abaixo.... >> >> web.xml >> >> >> <servlet> >> >> <servlet-name>ServletWeb</servlet-name> >> >> <servlet-class>*servlets*.reports.ServletWeb</servlet-class> >> >> </servlet> >> >> <servlet-mapping> >> >> <servlet-name>ServletWeb</servlet-name> >> >> <url-pattern>/ServletWeb</url-pattern> >> >> </servlet-mapping> >> >> >> chamada no controller..... >> >> >> *var* request:URLRequest = *new* URLRequest(*"/ImobiliariaWeb/ServletWeb" >> *); *//App/NomeDaSuaServlet no mapeamento do web.xml * >> >> request.method = URLRequestMethod.POST >> >> *var* variables:URLVariables = *new* URLVariables(); >> >> variables.acao = >> *'ListagemBancos'*; >> >> variables.fl = >> *'codInicial='*+ txtCodigoIni.text + *'|'* + *'codFinal='* + >> txtCodigoFim.text; //*parametros do relatorio...; * >> >> request.data = variables; >> >> navigateToURL(request, >> *"_blank"*); >> >> >> Qualquer dúvida é só perguntar..... >> >> >> *Att., * >> >> *Roger Rayner* >> >> *Analista de Sistemas* >> >> TOTVS BAHIA >> ( 55 (71) 9616 - 6876 >> + roger.ray...@totvs.com.br >> >> Twitter: www.twitter.com/rogerrayner >> >> ** >> >> ------------------------------ >> *De:* flexdev@googlegroups.com [flex...@googlegroups.com] em Nome de >> Bruno Ribeiro [brunohanu...@gmail.com] >> *Enviado:* terça-feira, 19 de outubro de 2010 14:56 >> *Para:* flexdev@googlegroups.com >> *Assunto:* [flexdev] IReport no Flex >> >> Fiz um relatório no Java, iReport, e não estou conseguindo executar via >> flex. Alguém sabe como posso realizar isso? >> >> Mais uma vez obrigado!!! >> >> >> -- >> 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 >> >> -- >> 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 > > > -- > 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 -- 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