Galera boa tarde, nao sei se estou fazendo alguma coisa errada, já pesquise e até encontrei muita coisa na internet e inclusive aqui do fórum mas nao consigo fazer funcionar, meu problema é o seguinte: tenho essa classe alunos:
public class Alunos{
public String Nome;
public void setNome(String Nome) {
this.Nome= Nome;
}
public String getNome() { // pode mudar
return Nome;
}
}
tenho uma classe conexão que a partir de uma lista de matriculas de alunos cria objetos alunos e adiciona em uma lista de Alunos:
Metodo da clase conexão:
public static List getAprovados(List siape, String Id_Curso) throws Exception {
ArrayList Alunos= new ArrayList<Alunos>();
String lista[]=null;
for(int i =0; i< siape.size();i++){
Alunos alunos = new Alunos();
String sql = "SELECT * FROM Aprovados WHERE Id_Curso ="+Id_Curso+ " AND Siape_CPF="+siape.get(i);
PreparedStatement stmt = getConnection().prepareStatement(sql);
//stmt.setString(1, nome);
ResultSet rs = stmt.executeQuery();
while (rs.next()) {
alunos.setNome(rs.getString("Nome_Aluno"));
//alunos.setId_Certificado(rs.getString("Id_Certificado"));
// alunos.setEmail(rs.getString("Email"));
//alunos.setSiape_CPF(rs.getString("Siape_CPF"));
}
Alunos.add(i, alunos);
rs.close();
}
return Alunos;
}
Quero a partir dessa lista de Alunos gerar meus relatórios no ireport pra isso segue minha classe de gerar relatórios:
public class Buscar_XML
{
String exportPath;
//private String path; //Caminho base
//private String pathToReportPackage = "/home/jhonnymcosta/Área de Trabalho/certificados IREPORT/";// Caminho para o package onde estão armazenados os relatorios Jarper
//Recupera os caminhos para que a classe possa encontrar os relatórios
public Buscar_XML() {
JFileChooser fc = new JFileChooser();
fc.setFileSelectionMode(JFileChooser.FILES_ONLY);
int res = fc.showOpenDialog(null);
if(res == JFileChooser.APPROVE_OPTION){
File diretorio = fc.getSelectedFile();
exportPath = fc.getSelectedFile().getAbsolutePath();// pega todo o endereco da pasta
}
else{
JOptionPane.showMessageDialog(null, "Voce nao selecionou nenhum diretorio.");}
System.out.println(exportPath);
// this.pathToReportPackage = export
}
//Imprime/gera uma lista de Clientes
public void imprimir(ArrayList alunos) throws Exception
{
ArrayList<Alunos> novo = new ArrayList<Alunos>();
novo = alunos;
// Map<String, String> nomes = new HashMap<String, String>();
for(int i = 0;i<novo.size();i++){System.out.println(novo.get(i).Nome);}
//System.out.println(novo.get(1).getId_Certificado());
JRBeanCollectionDataSource beanBurritoWrap = new JRBeanCollectionDataSource(novo);
JasperReport report = JasperCompileManager.compileReport(exportPath);
System.out.println(exportPath);
JasperPrint print = JasperFillManager.fillReport(report, null, beanBurritoWrap);
System.out.println("aquiii");
JasperExportManager.exportReportToPdfFile(print, "/home/jhonnymcosta/Área de Trabalho/q/tseste.pdf");
}
public String getPathToReportPackage() {
return this.exportPath;
}
}
Notem pessoal que meu Buscar_XML, como tenho modelos de relatórios diferentes criei uma maneira de buscar o relatório adequado,
nao importa o que eu faça sempre aparece o erro:
Exception in thread “main” net.sf.jasperreports.engine.JRException: Error retrieving field value from bean : Nome at net.sf.jasperreports.engine.data.JRAbstractBeanDataSource.getBeanProperty(JRAbstractBeanDataSource.java:123) at net.sf.jasperreports.engine.data.JRAbstractBeanDataSource.getFieldValue(JRAbstractBeanDataSource.java:96) at net.sf.jasperreports.engine.data.JRBeanCollectionDataSource.getFieldValue(JRBeanCollectionDataSource.java:100) at net.sf.jasperreports.engine.fill.JRFillDataset.setOldValues(JRFillDataset.java:818) at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:782) at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1433) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:108) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:908) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:830) at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:85) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:624) at Certificado.Buscar_XML.imprimir(Buscar_XML.java:71) at Certificado.Lista_Alunos.(Lista_Alunos.java:24) at Certificado.Teste_Date.main(Teste_Date.java:7) Caused by: java.lang.NoSuchMethodException: Unknown property 'Nome’ 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:111) … 13 more
por favor me ajudem