Erro Relatorio jrxml

1 resposta
F

Pessoal
Não consigo abrir um relatorio .jrxml
seguinte erro:
13/11/2006 20:35:26 org.apache.commons.digester.Digester endElement

SEVERE: Body event threw error

java.lang.IllegalAccessError: tried to access method org.apache.commons.beanutils.BeanUtils.setProperty(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V from class org.apache.commons.digester.SetNestedPropertiesRule$AnyChildRule

at org.apache.commons.digester.SetNestedPropertiesRule$AnyChildRule.body(SetNestedPropertiesRule.java:438)

at org.apache.commons.digester.Rule.body(Rule.java:194)

at org.apache.commons.digester.Digester.endElement(Digester.java:1100)

at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1720)

at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)

at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)

at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)

at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)

at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)

at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)

at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)

at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)

at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667)

at org.apache.crimson.parser.Parser2.parse(Parser2.java:337)

at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448)

at org.apache.commons.digester.Digester.parse(Digester.java:1647)

at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:238)

at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:225)

at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:213)

at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:167)

at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:151)

at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:142)

at RelatProf.geraRelatorio(RelatProf.java:49)

at RelatProf.main(RelatProf.java:56)

at __SHELL28.run(__SHELL28.java:6)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:324)

at bluej.runtime.ExecServer$3.run(ExecServer.java:858)

java.lang.IllegalAccessError: tried to access method org.apache.commons.beanutils.BeanUtils.setProperty(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V from class org.apache.commons.digester.SetNestedPropertiesRule$AnyChildRule

at org.apache.commons.digester.SetNestedPropertiesRule$AnyChildRule.body(SetNestedPropertiesRule.java:438)

at org.apache.commons.digester.Rule.body(Rule.java:194)

at org.apache.commons.digester.Digester.endElement(Digester.java:1100)

at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1720)

at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)

at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)

at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)

at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)

at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)

at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)

at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)

at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)

at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667)

at org.apache.crimson.parser.Parser2.parse(Parser2.java:337)

at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448)

at org.apache.commons.digester.Digester.parse(Digester.java:1647)

at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:238)

at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:225)

at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:213)

at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:167)

at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:151)

at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:142)

at RelatProf.geraRelatorio(RelatProf.java:49)

at RelatProf.main(RelatProf.java:56)

Esta e a classe q uso

import java.sql.*;
import java.util.*;
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.view.JasperViewer;
import net.sf.jasperreports.engine.util.JRLoader;
import org.apache.commons.digester.Digester;


public class RelatProf
{

/* Realiza conexão com o banco de dados, gerando o objeto Connection */
private static Connection getConnection( ) throws

ClassNotFoundException, SQLException
{
String driver = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://localhost/*****";
String user = "****";
String password = "****";
String arquivo = "todosMedicos.jrxml";
Class.forName(driver);
Connection con = DriverManager.getConnection( url, user, password );
return con;
}


/* Gera Relatorio e visualiza-o */
public void geraRelatorio( ) throws JRException, Exception
{
Connection con = getConnection( );
Statement stm = con.createStatement( );
String query = "select * from Medico";
ResultSet rs = stm.executeQuery( query );

/* implementação da interface JRDataSource para DataSource ResultSet */
JRResultSetDataSource jrRS = new JRResultSetDataSource( rs );

/* HashMap de parametros utilizados no relatório. Sempre instanciados */
Map parameters = new HashMap();





JasperReport jr;
JasperPrint jprint;
jr = JasperCompileManager.compileReport("todosMedicos.jrxml");
jprint = JasperManager.fillReport(jr, parameters, jrRS);
JasperViewer.viewReport(jprint);
}

public static void main(String[] args) throws JRException, Exception
{
new RelatProf().geraRelatorio();
}
}

PRECISO DE AJUDA

1 Resposta

F

estranho o erro a unica coisa q esta diferente da maneira q eu uso é…
ve se entende… agora certifique tbm se seus atrinutos esta com os tipos correto tanto nos fields qto nos que estao no formulario entendeu ?
integer = integer etc…

byte[] bytes = null;

try {

// carrega os arquivos jasper

File reportFile = null;

reportFile = new File(servletContext.getRealPath("/report/" + arquivoJasper));

JasperReport relatorioJasper = (JasperReport)JRLoader.loadObject(reportFile.getPath());

File reportSubFile = null;

// Caso tenha subReport

if(arquivoSubJasper != null && arquivoSubJasper != “”){

reportSubFile = new File(servletContext.getRealPath("/report/" + arquivoSubJasper));

}

// parâmetros, se houverem
if(arquivoSubJasper != null && arquivoSubJasper != ""){
        	parametros.put("subRel",jrDSSub);
        	parametros.put("subFile",reportSubFile);
        }
       
        bytes = JasperRunManager.runReportToPdf(relatorioJasper,parametros,jrRs);
        
    } catch (JRException e) {
//        	e.toString()

e.printStackTrace();

}

if (bytes != null && bytes.length > 0) {

// envia o relatório em formato PDF para o browser

response.setContentType(application/pdf);

response.setContentLength(bytes.length);

ServletOutputStream   ouputStream = response.getOutputStream();

ouputStream.write(bytes, 0, bytes.length);

ouputStream.flush();

ouputStream.close();

}

[]'s

Criado 13 de novembro de 2006
Ultima resposta 14 de nov. de 2006
Respostas 1
Participantes 2