Preciso gerar um relatorio via web, entao estou utilizando o iReport. Usando a funcao q fiz numa aplicacao desktop funciona normal, mas, quando utilizo esta mesma funcao em paginas jsp, importando a classe, da erro, alguem poderia dar uma força de como solucionar isso?
Obrigado desde ja!
// Erro gerado
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: net/sf/jasperreports/engine/JRDataSource
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.jsp.GerarBoleto_jsp._jspService(GerarBoleto_jsp.java:72)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
java.lang.NoClassDefFoundError: net/sf/jasperreports/engine/JRDataSource
org.apache.jsp.jsp.GerarBoleto_jsp._jspService(GerarBoleto_jsp.java:57)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
//Pagina que chama a classe relatorio
<%@ page language=“java” %>
<%@ page import = “java.sql.*, util.Relatorio”%>
<% try
{
String sql="";
Connection con;
con = DriverManager.getConnection(session.getAttribute(“url”).toString(), “sa”, “”);
Relatorio relatorio = new Relatorio();
con.close();
}
catch (SQLException e)
{
System.out.println("Erro no sql: " + e.toString());
}
%>
Classe relatorio
package util;
import java.sql.;
import net.sf.jasperreports.engine.;
import java.util.*;
public class Relatorio {
ResultSet rs;
public Relatorio()
{
}
public void gerarRelatorio(Connection con) throws JRException
{
try
{
String sql=“SELECT * FROM ALUNO”;
Statement s = con.createStatement();
rs = s.executeQuery(sql);
JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);
HashMap parameters = new HashMap();
JasperCompileManager.compileReportToFile("teste.xml", "Teste.jasper");
JasperPrint impressao = JasperFillManager.fillReport("Teste.jasper",parameters,jrRS);
JasperExportManager.exportReportToHtmlFile(impressao, "teste.html");
}
catch (SQLException e)
{
System.out.println("Erro no sql: " + e.toString());
}
}
}