Fala galera!
to tentando criar um report em xls a partir de um List (java.util.List) usando o iReport. O problema é que da uns erros, e eu realmente não sei o que estou fazendo errado.
O código é o seguinte:
Collection<Report> reports = createBeanCollection(); // lista de objetos Report, que contém todas as informações que quero mostrar
JRDataSource jrRS = new JRBeanCollectionDataSource(reports, false);
Map parameters = new HashMap();
try {
JasperFillManager.fillReportToFile("c:/users/vitor/report3.jasper", parameters, jrRS);
JasperViewer.viewReport("report3.jrprint", false);
}
catch (JRException e) {
e.printStackTrace();
}
Na linha “JasperFillManager.fillReportToFile(“c:/users/vitor/report3.jasper”, parameters, jrRS);” ele dá o seguinte erro:
java.lang.ClassCastException: cannot assign instance of [Lnet.sf.jasperreports.engine.JRBand; to field net.sf.jasperreports.engine.base.JRBaseSection.bands of type [Lnet.sf.jasperreports.engine.JRBand; in instance of net.sf.jasperreports.engine.base.JRBaseSection
java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(ObjectStreamClass.java:2032)
java.io.ObjectStreamClass.setObjFieldValues(ObjectStreamClass.java:1212)
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1953)
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:88)
net.sf.jasperreports.engine.JasperFillManager.fillReportToFile(JasperFillManager.java:443)
A classe Report é assim:
public class Report implements Serializable{
private Long userId;
private String userEmail;
private String accountIndividualName;
private String username;
private Long borrowerId;
private Long lenderId;
private Date historyDate;
private Date lisFilledCreationDate;
private Date lisListedCreationDate;
private Date lisDeniedCreationDate;
private Date lisFinLess50CreationDate;
private Date lisFinNotAcceptedCreationDate;
private Date lisOkCreationDate;
private Date lPendingCreationDate;
private Date lokCreationDate;
private Date lDeniedCreationDate;
private Date bidDate;
private boolean userValidated;
... getters e setters...
}
Se alguem puder me dar uma ajuda fico muito grato!!
Ah, e o xml gerado pelo iReport é o seguinte:
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="report3" language="groovy" pageWidth="3000" pageHeight="595" orientation="Landscape" columnWidth="802" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
<property name="ireport.scriptlethandling" value="0"/>
<property name="ireport.encoding" value="UTF-8"/>
<import value="net.sf.jasperreports.engine.*"/>
<import value="net.sf.jasperreports.engine.data.*"/>
<import value="java.util.*"/>
<style name="Arial_Normal" isDefault="true" fontName="Arial" fontSize="12" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfFontName="Helvetica" pdfEncoding="Cp1252" isPdfEmbedded="false"/>
<style name="Arial_Bold" isDefault="false" fontName="Arial" fontSize="12" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false" pdfFontName="Helvetica-Bold" pdfEncoding="Cp1252" isPdfEmbedded="false"/>
<style name="Arial_Italic" isDefault="false" fontName="Arial" fontSize="12" isBold="false" isItalic="true" isUnderline="false" isStrikeThrough="false" pdfFontName="Helvetica-Oblique" pdfEncoding="Cp1252" isPdfEmbedded="false"/>
<field name="userId" class="java.lang.Long"/>
<field name="userEmail" class="java.lang.String"/>
<field name="accountIndividualName" class="java.lang.String"/>
<field name="username" class="java.lang.String"/>
<field name="borrowerId" class="java.lang.Long"/>
<field name="lenderId" class="java.lang.Long"/>
<field name="historyDate" class="java.util.Date"/>
<field name="lisFilledCreationDate" class="java.util.Date"/>
<field name="lisListedCreationDate" class="java.util.Date"/>
<field name="lisDeniedCreationDate" class="java.util.Date"/>
<field name="lisFinLess50CreationDate" class="java.util.Date"/>
<field name="lisFinNotAcceptedCreationDate" class="java.util.Date"/>
<field name="lisOkCreationDate" class="java.util.Date"/>
<field name="lPendingCreationDate" class="java.util.Date"/>
<field name="lokCreationDate" class="java.util.Date"/>
<field name="lDeniedCreationDate" class="java.util.Date"/>
<field name="bidDate" class="java.util.Date"/>
<field name="userValidated" class="java.lang.Boolean"/>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="79" splitType="Stretch"/>
</title>
<pageHeader>
<band height="35" splitType="Stretch"/>
</pageHeader>
<columnHeader>
<band height="61" splitType="Stretch">
<staticText>
<reportElement x="0" y="41" width="71" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[ID]]></text>
</staticText>
<staticText>
<reportElement x="71" y="41" width="181" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[E-MAIL]]></text>
</staticText>
<staticText>
<reportElement x="252" y="41" width="323" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[NOME]]></text>
</staticText>
<staticText>
<reportElement x="575" y="41" width="143" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[APELIDO]]></text>
</staticText>
<staticText>
<reportElement x="718" y="41" width="100" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[TOMADOR]]></text>
</staticText>
<staticText>
<reportElement x="818" y="41" width="100" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[INVESTIDOR]]></text>
</staticText>
<staticText>
<reportElement x="918" y="41" width="160" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[DATA CONTA]]></text>
</staticText>
<staticText>
<reportElement x="1078" y="41" width="160" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[DATA LEILÃO PREENCHIDO]]></text>
</staticText>
<staticText>
<reportElement x="1238" y="41" width="160" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[DATA LEILÃO LISTADO]]></text>
</staticText>
<staticText>
<reportElement x="1398" y="41" width="160" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[DATA LEILÃO NEGADO]]></text>
</staticText>
<staticText>
<reportElement x="1558" y="41" width="185" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[DATA LEILÃO S SUCESSO < 50]]></text>
</staticText>
<staticText>
<reportElement x="1743" y="41" width="216" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[DATA LEILÃO S SUCESSO N ACEITE]]></text>
</staticText>
<staticText>
<reportElement x="1959" y="41" width="160" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[DATA LEILÃO SUCESSO]]></text>
</staticText>
<staticText>
<reportElement x="2119" y="41" width="160" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[DATA EMPRÉSTIMO PENDENTE]]></text>
</staticText>
<staticText>
<reportElement x="2279" y="41" width="160" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[DATA EMPRÉSTIMO OK]]></text>
</staticText>
<staticText>
<reportElement x="2439" y="41" width="182" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[DATA EMPRÉSTIMO NEGADO]]></text>
</staticText>
<staticText>
<reportElement x="2621" y="41" width="160" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[DATA BID]]></text>
</staticText>
<staticText>
<reportElement x="2781" y="41" width="160" height="20"/>
<textElement textAlignment="Center">
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[VERIFICADO]]></text>
</staticText>
</band>
</columnHeader>
<detail>
<band height="126" splitType="Stretch">
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement key="textField" x="0" y="0" width="71" height="20"/>
<textElement/>
<textFieldExpression class="java.lang.Long"><![CDATA[$F{userId}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="71" y="0" width="181" height="20"/>
<textElement/>
<textFieldExpression class="java.lang.String"><![CDATA[$F{userEmail}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="252" y="0" width="323" height="20"/>
<textElement/>
<textFieldExpression class="java.lang.String"><![CDATA[$F{accountIndividualName}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="575" y="0" width="143" height="20"/>
<textElement/>
<textFieldExpression class="java.lang.String"><![CDATA[$F{username}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="718" y="0" width="100" height="20"/>
<textElement/>
<textFieldExpression class="java.lang.Long"><![CDATA[$F{borrowerId}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="818" y="0" width="100" height="20"/>
<textElement/>
<textFieldExpression class="java.lang.Long"><![CDATA[$F{lenderId}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="918" y="0" width="160" height="20"/>
<textElement/>
<textFieldExpression class="java.util.Date"><![CDATA[$F{historyDate}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="1078" y="0" width="160" height="20"/>
<textElement/>
<textFieldExpression class="java.util.Date"><![CDATA[$F{lisFilledCreationDate}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="1238" y="0" width="160" height="20"/>
<textElement/>
<textFieldExpression class="java.util.Date"><![CDATA[$F{lisListedCreationDate}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="1398" y="0" width="160" height="20"/>
<textElement/>
<textFieldExpression class="java.util.Date"><![CDATA[$F{lisDeniedCreationDate}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="1558" y="0" width="185" height="20"/>
<textElement/>
<textFieldExpression class="java.util.Date"><![CDATA[$F{lisFinLess50CreationDate}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="1743" y="0" width="216" height="20"/>
<textElement/>
<textFieldExpression class="java.util.Date"><![CDATA[$F{lisFinNotAcceptedCreationDate}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="1959" y="0" width="160" height="20"/>
<textElement/>
<textFieldExpression class="java.util.Date"><![CDATA[$F{lisOkCreationDate}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="2119" y="0" width="160" height="20"/>
<textElement/>
<textFieldExpression class="java.util.Date"><![CDATA[$F{lPendingCreationDate}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="2279" y="0" width="160" height="20"/>
<textElement/>
<textFieldExpression class="java.util.Date"><![CDATA[$F{lokCreationDate}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="2439" y="0" width="182" height="20"/>
<textElement/>
<textFieldExpression class="java.util.Date"><![CDATA[$F{lDeniedCreationDate}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="2621" y="0" width="160" height="20"/>
<textElement/>
<textFieldExpression class="java.util.Date"><![CDATA[$F{bidDate}]]></textFieldExpression>
</textField>
<textField evaluationTime="Auto" isBlankWhenNull="true">
<reportElement x="2781" y="0" width="160" height="20"/>
<textElement/>
<textFieldExpression class="java.lang.Boolean"><![CDATA[$F{userValidated}]]></textFieldExpression>
</textField>
</band>
</detail>
<columnFooter>
<band height="45" splitType="Stretch"/>
</columnFooter>
<pageFooter>
<band height="54" splitType="Stretch"/>
</pageFooter>
<summary>
<band height="42" splitType="Stretch"/>
</summary>
</jasperReport>