Fórum Converter Txt em Pdf com Ireport #501654
18/11/2014
0
eu abro o arquivo, leio o txt intero armazeno dentro um array list porem quando é na hora do ireport gera o arquivo ele gera em branco, o array list ele contem dados que
List<String> listaTexto = new ArrayList<>();
BufferedReader bufferedReader = new BufferedReader(fileReader); //aqui ele vai receber o arquivo
String linha = "";
int i = 1;
try {
while ((linha = bufferedReader.readLine()) != null) {
listaTexto.add(linha);
i++;
}
} catch (IOException e1) {
System.out.println("Nao consegui ler o arquivo " + e1.getMessage());
e1.printStackTrace();
}
e o meu report
esta somente com a band detail com o componente List usando a expresao $F
<?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="Rel 80colunas" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="39f06f89-39fc-4794-8a1b-a29bcf65609c"> <property name="ireport.zoom" value="1.0"/> <property name="ireport.x" value="0"/> <property name="ireport.y" value="0"/> <subDataset name="dataset1" uuid="9cd118e1-78c2-4476-bc86-2a6397030f75"> <field name="_THIS" class="java.lang.String"/> </subDataset> <parameter name="MinhaLista" class="java.util.List"/> <detail> <band height="27" splitType="Stretch"> <componentElement> <reportElement x="0" y="0" width="555" height="27" uuid="87c45759-a2c4-42e2-8f6c-568badf6b92f"/> <jr:list xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd" printOrder="Vertical"> <datasetRun subDataset="dataset1" uuid="a6662c01-6e19-448b-8f45-2ae4038c44a6"> <parametersMapExpression><![CDATA[$P]]></parametersMapExpression> <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($P)]]></dataSourceExpression> </datasetRun> <jr:listContents height="27" width="555"> <textField> <reportElement x="0" y="0" width="100" height="20" uuid="968cadf1-05d8-4037-9461-8c747cf00090"/> <textFieldExpression><![CDATA[$F]]></textFieldExpression> </textField> </jr:listContents> </jr:list> </componentElement> </band> </detail> </jasperReport>
e passo da seguinte forma o ArrayList
Map parameters = new HashMap();
parameters.put("MinhaLista", listaTexto);
try {
impressao = JasperFillManager.fillReport(layoutImpressao, null, new JRBeanCollectionDataSource(listaTexto));
} catch (JRException ex) {
Logger.getLogger(PrincipalJorcamento.class.getName()).log(Level.SEVERE, null, ex);
}
Alberto Leal
Curtir tópico
+ 0Posts
19/11/2014
Ronaldo Lanhellas
Tente assim:
impressao = JasperFillManager.fillReport(layoutImpressao, parameters, new JRBeanCollectionDataSource(listaTexto));
Gostei + 0
20/11/2014
Alberto Leal
inclui o parametro porem ele da uma execption
Exception in thread "main" java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map
Gostei + 0
20/11/2014
Ronaldo Lanhellas
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)