IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Jasper Discussion :

path subreport et jar java


Sujet :

Jasper

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2010
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 74
    Points : 31
    Points
    31
    Par défaut path subreport et jar java
    salut a tout le monde,
    j'ai créé une petite application java pour faire des facture , et j'ai utilisé jesperrepport pour faire l'impression, lorsque j'execute mon application sous netbeans tout va marché trés bien et la création des facture se fait normal, mais lorsque j'execute la meme application avec mon fichier jar je tombe dans cette exception:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    net.sf.jasperreports.engine.jrexception:error opening input stream from url:C:\Users\adm\Documents\NetBeansProjects\subrep\dist\subrep.jar!\subrep\subRapport.jasper
    voila le code de ma classe java:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.io.InputStream;
    import java.net.URL;
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    import javax.swing.*;
    import javax.swing.table.DefaultTableModel;
    import net.sf.jasperreports.engine.JRException;
    import net.sf.jasperreports.engine.JasperFillManager;
    import net.sf.jasperreports.engine.JasperPrint;
    import net.sf.jasperreports.engine.data.JRMapCollectionDataSource;
    import net.sf.jasperreports.engine.data.JRTableModelDataSource;
    import net.sf.jasperreports.view.JasperViewer;
     
    public class Subrep {
     
        static DefaultTableModel mod;
     
        public static void main(String[] args) {
            JFrame f = new JFrame();
            f.setLayout(null);
            f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            f.setBounds(0, 0, 400, 200);
     
            String title[] = {"nom", "prenom"};
            String data[][] = {{"A", "B"}, {"A", "B"}};
            mod = new DefaultTableModel(data,title);
            JTable tab = new JTable(mod);
            JScrollPane sc=new JScrollPane(tab);
            sc.setBounds(10, 10, 370, 80);
            f.add(sc);
     
            JButton b = new JButton("imprimer");
            b.setBounds(150, 110, 100, 25);
            b.addActionListener(new ActionListener() {
     
                @Override
                public void actionPerformed(ActionEvent e) {
                    try {
     
                        //****************************************
                        JRTableModelDataSource jrtAL = new JRTableModelDataSource(mod); 
                        Map SUB_DATA1 = new HashMap(); 
                        SUB_DATA1.put("jrtAL", jrtAL);
     
                        Map<String, Object> param = new HashMap<String, Object>();
                        param.put("SUB_DATA1", SUB_DATA1);
     
                        String filename = "Rapport.jasper";
                        String subreport = "SubRapport.jasper";
                        InputStream jasperReport = null;
     
                        String subR = this.getClass().getResource(subreport).getPath();
                        param.put("SUBREPORT_DIR", subR);
     
                        Map simpleMasterMap = new HashMap();
                        simpleMasterMap.put("rcc", "RC N°: ");
     
                        List simpleMasterList = new ArrayList();
                        simpleMasterList.add(simpleMasterMap);
                        JRMapCollectionDataSource simpleDS = new JRMapCollectionDataSource(simpleMasterList);
                        jasperReport = this.getClass().getResourceAsStream(filename);
                        JasperPrint print = JasperFillManager.fillReport(jasperReport, param, simpleDS);
                        JasperViewer.viewReport(print, false);
                    } catch (Exception ex) {
                        ex.printStackTrace();
                        JOptionPane.showMessageDialog(new JFrame(), ex.getMessage());
                    }
     
                }
            });
            f.add(b);
            f.setVisible(true);
     
        }
     
    }
    pour plus d'informations, mon rapport contient un sous rapport et le probleme se pose avec le chemin de subreport,

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Luxembourg

    Informations forums :
    Inscription : Mars 2007
    Messages : 616
    Points : 556
    Points
    556
    Par défaut
    Bonjour,

    1. Pourquoi tu passes en paramètre le nom du sous-rapport? Tu ne peux pas le mettre dans le template?
    2. Mets un point d'arrêt sur la ligne 57, vérifie quelle valeur a la variable. Sinon affiche la valeur dans ta fenêtre.
    3. Modifie ton template affiche le contenu des paramètres REPORT_PARAMETERS_MAP et REPORT_RESOURCE_BUNDLE

Discussions similaires

  1. Commande jar --> java.io.IOException: invalid header field
    Par Adriano1664 dans le forum Général Java
    Réponses: 7
    Dernier message: 07/05/2009, 17h15
  2. .sql install.jar java
    Par Adel85 dans le forum Installation
    Réponses: 1
    Dernier message: 25/07/2007, 09h51
  3. Lancement .jar : java lang NoClassDefFoundError
    Par delma dans le forum Langage
    Réponses: 15
    Dernier message: 07/11/2006, 16h37
  4. [Système][Class-Path]cherche aide sous java pour fedoracore ou linux
    Par mickey hollywood dans le forum Général Java
    Réponses: 4
    Dernier message: 29/03/2005, 02h13
  5. Chercher et renvoyer le path d'un fichier .java
    Par dzincou dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 08/09/2004, 12h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo