Galera e o seguinte…
eu fiz um relatorio basico, recuperando dados atraves de um banco, o myslq…
so que na hora que eu peço para executar o relatorio, me gera um arquivo .jrxml ai não consigo ver o meu relatorio…ainda não implementei em classe java e tals, ta tudo no iReport mesmo…
Coloquei la para visualizar em PDF, mas nada aconteceu, so salvou com a extensão .jrxml. Estou usando o iReport 3.0.
Configurei as variaveis de ambiente…segui um tuto daki do guj mas nada…
Alguem ai ja passou por isso e sabe a solução…Desde ja agradeço…
[color=darkblue] Não sei se ajuda, mas geralmente quando ocorre algo do tipo é erro na configuração, erro na query, alguma coisa do tipo, ele gera um log de erros, se conseguir colar aqui é bom pois assim podem te ajudar melhor :[/color]
depois de criado o relatorio
Clica em Criar (Build) - Executar Relatorio (usar conexão ativa) e salvar em .jrxml mesmo se ainda nao tiver salvo
Depois que o relatorio for exibido clique no Icone do disquete no lado direiro bem em cima
Vai abri uma janela pra vc salva o arquivo em um dos formatos
que o IReport fornece um deles é o PDF escreve o nome e seleciona tipo de arquivo que vc quer q salva
Bom espero ter ajudado
qualquer duvida é so posta!
[color=darkblue]Ele tem uma janela, que é “Report Problems Window”, onde você edita os arquivos mesmo, dentro dela tem a description e o object, o forum permite imagens, se quiser é só postar [/color]
Olha, acho que você deve postar seu código aí… Ou você tá utilizando somente o Ireport com a conexão ativa?
Lembrando:
Arquivos jrxml = Funcionam como a forma do Relatório, é o arquivo que diz que tal dado vai ficar em tal lugar, com tal fonte, tal tamanho… etc…etc…etc…
Hum…to começando a entender…entao…para mim qdo eu pedia para compilar e tals ja geraria o relatorio…
Respondendo a tua pergunta Adriano, eu to utilizando somente o iReports, era so um teste, que acabou me dando mais dor de cabeça…rsrs
Tenho que implementar num projeto aki da empresa, com a classe java e tals…Se alguem tiver um tuto que explique isso, pode ser em ingles não tem problema… Preciso resolver isso hj…rsrs
Ola Karol…
Em… Estou passando por uma situação parecida com a sua
se não for encomodo, Post o resultado q vc conseguiu…
Vou continuar lendo os tutoriais…
Desde ja agradeço…
Ola…
olha resolvi da seguinte forma…a parte do servlet pq to usando uma arquitetura aki da empresa…
mas o servlet ficou assim
package com.jfelipe.web.model.servlet;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.JasperRunManager;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import net.sf.jasperreports.engine.util.JRLoader;
public class RelAmbiental extends HttpServlet {
private ServletContext sc;
public void init(ServletConfig config) throws ServletException {
super.init(config);
sc = config.getServletContext();
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
String acao = request.getParameter("acao");
if (acao.equals("Relatorio")) {
execute(sc, request, response);
}
}
@SuppressWarnings("unchecked")
private void execute(ServletContext sc, HttpServletRequest request,
HttpServletResponse response) throws IOException {
try {
//aki eu peguei a minha lista de informações que joguei na requisição
List listAmbiental = (List) request.getSession().getAttribute("ambiental");
JRDataSource jrds = new JRBeanCollectionDataSource(listAmbiental);
// parametros para o relatorio
//parte que coloquei a imagem, ou algum outro parametro que vc quiser passar
String img = sc.getRealPath("relatorios/arvore.gif");
HashMap map = new HashMap();
map.put("logo", img);
// carrega os arquivos jasper
ou seja depois que vc fez o relatorio la no iReports e compilou ele salva um arquivo //.jasper, esse arquivo vc coloca em uma pasta dentro do seu projeto no meu caso da dentro relatorios.
JasperReport reportFile = (JasperReport) JRLoader.loadObject(sc
.getRealPath("./relatorios/relAmbiental.jasper"));
//declara o arry de bytes
byte bytes[] = null;
try {
//aki e onde pega as informações la do .jasper e jogou nesse arry declarado acima
bytes = JasperRunManager.runReportToPdf(reportFile, map, jrds);
} catch (Exception e) {
e.printStackTrace();
return;
}
//aki e a parte que passa pra arquivos do tipo PDF
if (bytes != null && bytes.length > 0) {
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();
}
} catch (JRException e) {
e.printStackTrace();
}
}
public void destroy() {
super.destroy();
System.out.println("conexao destruida!");
}
}
ai la na minha tela eu coloco um link assim para chamar esse servlet :
<a href=’…/relProprietarioSV?acao=Relatorio />
Espero ter ajudado, qualquer duvida e so me perguntar…Abs!
ah…onde eu falo que joguei na requisição falei errado, joguei na sessão…rsrs…
Outra coisa depois que postei como fiz o Servlet que fui ler o topico…rsrs…Se vc quiser executar pelo proprio iReports…o meu erro foi o seguinte, tava configurado a conexao de forma errada, depois consertei e tals…e arrumou, outra coisa que gostuma dar muito e erro de dimensão tipo alguma linha fora do lugar e tals…ai da um erro numa barra logo abaixo…da uma olhada la… qualquer coisa, so perguntar…