Estou criando uma applicação utilizando Struts2 e para emissao de relatorios estou utilizando Servlet para enviar algumas informações para o arquivo .jasper
O problema é quando tento chamar o relatório pela minha aplicacao, assim, ele mostra somente as informações do relatorio e mostra o subrelatorio em branco sem nenhuma informação…
Estou com esse problema a quase uma semana e nao estou conseguindo resolve-lo.
Alguem tem alguma sugestao de como posso solucionar este problema??
Procurei em outros Tópicos do fórum e achei diversas pessoas com o mesmo problema… mas nenhuma resposta concreta de como resolver…
Como você está chamando seu subrelatorio? Oque voce passa ao seu subrelatorio?
Teria o condigo?
agcp123
Chamo o relatorio atravez de um servlet mapeado passando como paramentro a string "pagina=atendimento" para reconhecer qual relatorio estou fazenod referencia
Ao abrir o relatorio, algumas informaçoes aparecem.. mas os subrelatorios nao..
protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{try{/**Conectacomobanco**/Connectioncon=DriverManager.getConnection(url,user,password);/**Retornaocaminhorelativodoservlet**/ServletContextcontext=getServletContext();/**Defineosparametrosusadosnorelatorio**/Mapparameters=newHashMap();if(request.getParameter("pagina").equalsIgnoreCase("atendimento")){/**Indicaoarquivojasper,oarquivopdfeapáginaderetornoapósterminar**/JasperStr="relatorioAtendimento.jasper";ArquivoPDF="relatorioAtendimento.pdf";RedirectStr="http://localhost:8080/TIB2/getPageAtendimento.action";/**MontaaconsultasqlbasicapararetornartodososregistrosdeAtendimentos**/query="select DISTINCT p.idpessoa, p.tipopessoa "+" FROM Atendimento atd, Pessoa p, ProjetoAtendimento proj, Setor setor "+" where "+" atd.isativo = true"+" and atd.pessoa = p.idpessoa "+" and atd.projeto = proj.idprojetoatendimento "+" and atd.setorresponsavel = setor.idsetor";/**Adicionaaosql,comparaçõesreferentesapesquisanapagina.*Paracadacampodapesquisaépassadoumparâmetronolink.**/pathJasper=context.getRealPath("WEB-INF/classes/tib/relatorio/")+"/atendimentoPJ.jasper";parameters.put("SUBREPORT_DIR",pathJasper+File.separator);}/**ExecutaaconsultaeretornaemumResultSetDataSource*queservirádeparâmetroparaageraçãodoarquivopdf**/Statementstmt=con.createStatement();ResultSetrs=stmt.executeQuery(query);JRResultSetDataSourcejrRS=newJRResultSetDataSource(rs);/**Geraoarquivopdfapartirdojasper**///JasperRunManager.runReportToPdfFile(PathStr+JasperStr,parameters,jrRS);ByteArrayOutputStreambaos=newByteArrayOutputStream();JasperReportrelatorio=(JasperReport)JRLoader.loadObject(context.getRealPath("WEB-INF/classes/tib/relatorio/"+JasperStr));//JasperReportrelatorio=(JasperReport)JRLoader.loadObject(PathStr+JasperStr);baos.write(JasperRunManager.runReportToPdf(relatorio,parameters,jrRS));....