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

iReport Discussion :

Créer une datasource sous iReport depuis des JavaBeans


Sujet :

iReport

  1. #1
    Provisoirement toléré
    Homme Profil pro
    Développeur JAVA JEE / PHP
    Inscrit en
    Avril 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur JAVA JEE / PHP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 151
    Points : 72
    Points
    72
    Par défaut Créer une datasource sous iReport depuis des JavaBeans
    Bonjour,

    J'ai développé un projet avec java/j2ee, et je veux réaliser les états avec Ireport/Jasper, pour se faire je veux me connecter vers mes classe java (javabeans) pour réaliser le fichier jrxml. S'il vous plait pouvez vous me guider pour réussir la connection.

    Merci d'avance

  2. #2
    Membre actif Avatar de Nicomart
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    205
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 205
    Points : 210
    Points
    210
    Par défaut
    tu crées une classe (public final class MaClasseDonneesJasper) qui va contenir tes méthodes (public static) renvoyant les List<monBean> getMaListe()

    dans ireport -> outils -> options -> classpath, tu ajoutes le dossier de ton projet en cochant "reloadable" (ça t'évitera de relancer Ireport chaque fois que tu feras une modif dans la méthode pour qu'elle soit prise en compte).

    dans ireport -> report/datasource (l'icône à droite de la liste déroulante des datasources) -> new -> JavaBeans set datasource.

    Name : ce que tu veux
    Factory class : package1.package2....packageN.MaClasseDonneesJasper
    Collection of javaBeans
    static method : getMaListe

    Un petit clic sur "Test" pour être sûr, normalement ça devrait fonctionner.

  3. #3
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    j'essaye de faire tout ça avec iReport 3.7.6. J'ai aussi essayé en référençant un .jar mais à chaque fois j'ai un message "NoClassFoundError" quand je fais le "Test" de la datasource.

    J'ai bien mis le full qualified name de ma classe et le nom de la méthode retournant un Collection, elle est bien statique,...

    je n'ai jamais galéré comme ça avec un nouvel outil

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Dans le classpath iReport (Outils > options > classpath), il faut ajouter le répertoire contenant la classe compilée (*.class) et non le répertoire contenant le fichier *.java

    Ex : C:\...\build\classes

    Je ne sais pas si c'est ça qui bloquait ?

    Bonne chance

  5. #5
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    ben je ne sais pas ce qui clochait mais avec la référence au .jar ça "marche".
    Par contre, quand je veux créer un DataSet, aucun "Field" ne m'est proposé
    Je ne comprend rien et la doc est proche de zéro.
    Je vais me procurer un livre sur le sujet car je galère trop

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2007
    Messages : 35
    Points : 28
    Points
    28
    Par défaut
    Salut, j'ai exactement le même problème que Ego. Ici c'est la v 3.7.5.

    J'ai beau ajouter le répertoire des .java et des .class au classpath iReport mais non. Et placer les classes dans un JAR n'a rien donné non plus - toujours ClassNotFoundException dans le foutu fichier message.log.

    Ça me rend dingue je perds du temps avec ce truc il doit bien y avoir une raison pourquoi il trouve pas les classes ???

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2007
    Messages : 35
    Points : 28
    Points
    28
    Par défaut
    Au cas où ça pourrait dépanner qqn voici la solution qui a fonctionnée correctement dans mon cas:

    1. Placer les classes du modèle dans un JAR (uniquement les .java)
    2. Déposer le JAR dans le répertoire \lib de iReport. Sur mon poste c'est C:\Program Files\iReport-3.7.5\ireport\libs
    3. Ajouter le JAR au classpath de iReport (déjà mentionné par Nicomart): Outils | Options | Classpath | Add JAR et cocher Reloadable
    4. Redémarrer iReport
    5. Ajouter le répertoire avec les .class qui génère la collection ou bien le tableau au classpath (différent de snyder19): Outils | Options | Classpath | Add Folder
    6. NOTE: ici il faut absolument sélectionner le répertoire parent au début du nom de package, sinon vous aurez un ClassNotFoundException à la création de la DataSource
    7. Cliquer le bouton Report DataSources | New | JavaBeans set datasource | Next
    8. Dans la fenêtre, inscrire les infos relatives à la classe qui génère les JavaBeans. Ici c'est:
      Name: PersonDataSource
      Factory class: test.TestPerson
      Collection of JavaBeans
      The static method to call to retrieve... getBeanCollection
    9. Cliquer sur Test devrait produire le message suivant: Connection test successful!

    Pour finir, il y a un blogue qui aborde ce sujet avec un exemple ici.

  8. #8
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    Bon finalement ça fonctionne en référençant le .jar via les préférences de iReport.
    Je ne sais pas ce qui ne fonctionnait pas avant

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DAO] Créer une DataSource de test
    Par vberetti dans le forum JDBC
    Réponses: 8
    Dernier message: 12/01/2013, 03h10
  2. Réponses: 3
    Dernier message: 21/08/2012, 15h20
  3. Réponses: 5
    Dernier message: 17/07/2006, 18h34
  4. Réponses: 10
    Dernier message: 02/11/2005, 11h12
  5. comment créer une image sous forme d'eclipse(ronde)
    Par unix27 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 15/05/2005, 22h16

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