Boa tarde amigos…
Quando eu rodo a minha aplicação, me deparo com o seguinte erro:
net.sf.jasperreports.engine.JRException: Error retrieving field value from bean : codpes
at net.sf.jasperreports.engine.data.JRAbstractBeanDataSource.getBeanProperty(JRAbstractBeanDataSource.java:116)
at net.sf.jasperreports.engine.data.JRAbstractBeanDataSource.getFieldValue(JRAbstractBeanDataSource.java:93)
at net.sf.jasperreports.engine.data.JRBeanCollectionDataSource.getFieldValue(JRBeanCollectionDataSource.java:104)
at net.sf.jasperreports.engine.fill.JRFillDataset.setOldValues(JRFillDataset.java:815)
at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:779)
at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1109)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:111)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:767)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:690)
at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:89)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:601)
at relatorio.ProcessoAnalise.doGet(ProcessoAnalise.java:52)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoSuchMethodException: Unknown property 'codpes'
at org.apache.commons.beanutils.PropertyUtilsBean.getSimpleProperty(PropertyUtilsBean.java:1122)
at org.apache.commons.beanutils.PropertyUtilsBean.getNestedProperty(PropertyUtilsBean.java:686)
at org.apache.commons.beanutils.PropertyUtilsBean.getProperty(PropertyUtilsBean.java:715)
at org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java:290)
at net.sf.jasperreports.engine.data.JRAbstractBeanDataSource.getBeanProperty(JRAbstractBeanDataSource.java:104)
... 25 more
Meu Servlet:
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
MovimentaDao md = new MovimentaDao();
try {
md.open();
// JasperReports -> iReport
JRDataSource jrds = new JRBeanCollectionDataSource(md.findByAll());
// Arquivo do relatório
JasperDesign jd = JRXmlLoader
.load("c:\\relatorio\\processoAnalise.jrxml");
// Compilar o relatório
JasperReport jr = JasperCompileManager.compileReport(jd);
// Mescar os dados do JDBC ao documento do Relatório
JasperPrint jp = JasperFillManager.fillReport(jr, null, jrds);
// Download de PDF
response.reset();
response.setContentType("application/pdf");
OutputStream out = response.getOutputStream();
JasperExportManager.exportReportToPdfStream(jp, out);
out.flush();
out.close();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
md.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
Meu MovimentaDao…
public List<Pessoal> findByAll() throws Exception {
open();
List<Pessoal> listaPessoal = new ArrayList<Pessoal>();
stmt = con.prepareStatement("select * from pessoal p");
rs = stmt.executeQuery();
while (rs.next()) {
Pessoal p = new Pessoal(rs.getString("p.codpes"),
rs.getString("p.nome"), rs.getString("p.cargo"),
rs.getString("p.sigla"), new ArrayList<Movimenta>());
listaPessoal.add(p);
}
for (Pessoal p : listaPessoal) {
stmt = con
.prepareStatement("select * from movimenta m where m.codpes = ? and m.dtdev is null");
stmt.setString(1, p.getCodPessoal());
rs = stmt.executeQuery();
while (rs.next()) {
Movimenta m = new Movimenta(rs.getInt("m.lanca"),
rs.getString("m.secproc"), rs.getString("m.numproc"),
rs.getString("m.anoproc"), rs.getString("m.dtdist"),
rs.getString("m.dtdev"), rs.getString("m.codpes"),
rs.getString("m.codpron"));
p.getListaMovimenta().add(m);
}
}
close();
return listaPessoal;
}
[color=red]Eu só gostaria de imprimir um PDF através de uma lista que eu fiz na minha classe MovimentaDao.[/color]
Muito obrigado 