Ireport

10 respostas
J

estou começando a trabalhar com java agora e estou tendo problemas em gerar um layout pra nota fiscal não estou coseguindo fazer a diagramação certa dele no ireport ou com a classe iText
se alguem puder ajudar eu agradeço

10 Respostas

rockstorm

Quais são as suas duvidas?
Quais os problemas que você esta tendo?
Esta seguindo algum tutorial de IReport?
Tente ser mais especifico no que você precisa.

J

eu preciso ver uma forma de gerar uma nota fiscal em java só que eu não estou conseguindo

rockstorm

Cara…mas você já fez alguma coisa??
A sua duvida esta na montagem do layout ou no desenvolvimento da aplicação que chama o relatorio??

Dá uma olhada nesse tutorial…

http://www.livramento.yu.com.br/tutoriais/ireport.html

J

vlw vou dar uma olhada nele

J
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.HashMap;

import java.util.Map;
import javax.swing.JOptionPane;

import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRResultSetDataSource;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;

public class repositorioProduto {

    private static final String url = "jdbc:postgresql://localhost:5432/teste";
    private static final String driver = "org.postgresql.Driver";
    private static final String login = "postgres";
    private static final String pwd = "postgres";

    public repositorioProduto() {
    }

    public JasperPrint gerar() {
        JasperPrint rel = null;

        try {
            Class.forName(driver);
            Connection con = DriverManager.getConnection(url, login, pwd);
            Statement stm = con.createStatement();
            Map map = new HashMap();

            String query = "select * from produto;

            ResultSet rs = stm.executeQuery(query);

            //implementação da interface JRDataSource para DataSource ResultSet
            JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);
            String arquivoJasper = "D:/testeIreport/src/testeireport/Fonte/nota2.jasper";
            map.put("qtdproduto", new Integer(3));
            map.put("descricao", "teste");
            map.put("razaosocial", "ldaskfja");
            map.put("notaidnota", new Integer(4));
            rel = JasperFillManager.fillReport(arquivoJasper, map);


            //String a = JasperRunManager.runReportToPdfFile(arquivoJasper, map, jrRS);
            //System.err.println(a);
            //JasperViewer.viewReport(a, false);

        } catch (JRException e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
        }catch(ClassNotFoundException e){
             JOptionPane.showMessageDialog(null, e.getMessage());
        }catch (SQLException e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
        }


        return rel;
    }

    public static void main(String[] args) {
        JasperPrint jp = new repositorioProduto().gerar();

      JasperViewer.viewReport(jp);
    }
}

ta dando o seguinte erro

init:
deps-jar:
compile-single:
run-single:
Exception in thread "main" java.lang.NullPointerException
        at net.sf.jasperreports.engine.JRPropertiesMap.readObject(JRPropertiesMap.java:185)
        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:597)
        at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323)
        at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
        at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:88)
        at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:254)
        at testeireport.Fonte.repositorioProduto.gerar(repositorioProduto.java:52)
        at testeireport.Fonte.repositorioProduto.main(repositorioProduto.java:72)
Java Result: 1
CONSTRUÍDO COM SUCESSO (tempo total: 0 segundos)

alguem sabe onde ta o erro???

J

esse erro ta dando nesta linha aqui, mas eu não estou conseguindo indentificar o pq ta dando esse erro

rel = JasperFillManager.fillReport(arquivoJasper, map);
C

De uma olhadinha nesse tópico sobre IReport

http://www.guj.com.br/posts/list/98256.java

J

segui os dois tutoriais mais ainda está dando erro :?

joede.fadel

tive um problema parecido com esse e era o .jar que eu estava usando
que estava dando erro tente abaixar outro, pois pelo que eu vi não tem
nada de errado com o seu código.

J

era o jar que eu estava utilizando que tava dando erro
vlw

Criado 29 de agosto de 2008
Ultima resposta 3 de set. de 2008
Respostas 10
Participantes 4