Erro JasperReport/iReport

0 respostas
fredericoengels

Olá pessoal, a algum tempo já venho postando algumas dúvidas em relação a Geração de Relatórios com o JasperReport, infelizmente não tive sucesso quanto a resolução do problema.

Por isso, resolvi postar aqui novamente, pois já quebrei bastante a cabeça e não encontro uma possível solução para esse problema, então gostaria de compartilhar com vocês, pois alguém já pode ter passado por isso também e poderá me ajudar.

É o seguinte pessoal, eu tenho uma classe (Main.java):

public class Main {
    public static void main(String[] args) {
        try {
            String path = "E:/WorkSpace/Java/ProjetoCRUDClientes/build/web/relatorios/relatorioclientes.jasper";
            Facade facade = Facade.getInstance();
            JasperPrint jp = facade.gerarRelatorioClientePDF(path);
            JasperViewer view = new JasperViewer(jp);
            view.setVisible(true);
            JasperExportManager.exportReportToPdfFile(jp, "clientes.pdf");
        } catch (JRException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
}

[color=green] Quando eu rodo essa classe, é gerado o relatório tudo certinho. [/color]

Eu fiz um servlet também (GerarRelatorioPDF):

public class GerarRelatorioPDF extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        PrintWriter out = response.getWriter();
        try {
           Facade facade = Facade.getInstance();
           String caminhoDiretorio = getServletContext().getRealPath("relatorios/");
           String nomeArquivo = "\relatorioclientes.jasper";
           String jasper = caminhoDiretorio.concat(nomeArquivo);
           jasper = jasper.replace('\' , '/');
           //Nessa linha é impresso: "E:/WorkSpace/Java/ProjetoCRUDClientes/build/web/relatorios/relatorioclientes.jasper"
           out.println(jasper);
           JasperPrint printer = facade.gerarRelatorioClientePDF(jasper);
           JasperViewer view = new JasperViewer(printer);
           view.setTitle("teste");
           view.setVisible(true);
           JasperExportManager.exportReportToPdfFile(printer, "clientes.pdf");
         }catch (Exception e) {
           out.println("Houve erro!");
       }
    }   
}

[color=red]Chamando o mesmo método, passando a mesma String como parâmetro, não consigo gerar o relatório, segue abaixo a excessão gerada:[/color]

java.lang.NoSuchMethodError: org.codehaus.groovy.runtime.GroovyCategorySupport.getCategoryNameUsage(Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicInteger;
	org.codehaus.groovy.runtime.callsite.AbstractCallSite.<init>(AbstractCallSite.java:46)
	org.codehaus.groovy.runtime.callsite.CallSiteArray.<init>(CallSiteArray.java:35)
	null_1298553812759_401890.$createCallSiteArray(calculator_null_1298553812759_401890)
	null_1298553812759_401890.$getCallSiteArray(calculator_null_1298553812759_401890)
	null_1298553812759_401890.<init>(calculator_null_1298553812759_401890)
	sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	java.lang.reflect.Constructor.newInstance(Constructor.java:530)
	java.lang.Class.newInstance0(Class.java:372)
	java.lang.Class.newInstance(Class.java:325)
	net.sf.jasperreports.engine.design.JRAbstractJavaCompiler.loadEvaluator(JRAbstractJavaCompiler.java:98)
	net.sf.jasperreports.engine.design.JRAbstractCompiler.loadEvaluator(JRAbstractCompiler.java:320)
	net.sf.jasperreports.engine.JasperCompileManager.loadEvaluator(JasperCompileManager.java:240)
	net.sf.jasperreports.engine.fill.JRFillDataset.createCalculator(JRFillDataset.java:420)
	net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:432)
	net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:77)
	net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:87)
	net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:57)
	net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:142)
	net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:52)
	net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:417)
	net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:247)
	br.crud.model.logic.RelatorioClienteService.gerarRelatorioPDF(RelatorioClienteService.java:33)
	br.crud.model.fachada.Facade.gerarRelatorioClientePDF(Facade.java:34)
	br.crud.controller.servlets.GerarRelatorioPDF.doGet(GerarRelatorioPDF.java:30)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)

Alguém pode me ajudar?

Criado 26 de fevereiro de 2011
Respostas 0
Participantes 1