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

BIRT Discussion :

[2.2.2] Intégrer BIRT dans SEAM


Sujet :

BIRT

  1. #1
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 189
    Points : 176
    Points
    176
    Par défaut [2.2.2] Intégrer BIRT dans JBOSS SEAM
    Bonjour,

    Le problème: on a une application tournant avec SEAM et on doit plugguer BIRT dessus.

    Le soucis, c'est que je n'ai pas de connaissances SEAM (à part l'architecture) et que niveau connexion BIRT, je suis novice (je commence à maitriser le designer).
    Aussi, ça me parait être un gros morceau.

    J'ai trouvé ça sur le NET et je m'attache à essayer de le faire fonctionner.
    http://wiki.eclipse.org/Seam_(BIRT)_Recipe

    Le problème, cette page indique qu'il ne faut pas utiliser de projet de type java.
    Or, où je suis, on travaille qu'avec des projets de type Java, alors malgré tout je travail avec un projet de type Java.
    Mais avec les projets de type Java, je n'arrive pas à créer d'entity SEAM.

    Donc, je suis bien pommé.
    Toute idée serai la bienvenue.
    Ne pas oublier le bouton RESOLU

    Mes lois informatiques qui n'ont pas encore trouvées de contre exemple:
    - Quand on gagne d'un coté, on perd très souvent voire toujours d'un autre.
    - Il est très rare de gagner sans rien perdre.
    - Quand la solution devient trop complexe à mettre en oeuvre, c'est qu'elle ne convient pas à ce que l'on attend, voire qu'elle est tout bonnement mauvaise.

  2. #2
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 189
    Points : 176
    Points
    176
    Par défaut
    Personne n'a intégrer BIRT dans un client JAVA quelqu'il soit?

    Il doit bien avoir certaines choses équivalentes.
    Aidez moi SVP.

    J'arrive à demander au serveur de charger l'édition demandée, mais le BIRT engine n'a pas l'air de créer le raport, car il m'indique qu'il ne trouve pas le raport.
    Problème, cela peut venir de plusieurs endroits.
    Ne pas oublier le bouton RESOLU

    Mes lois informatiques qui n'ont pas encore trouvées de contre exemple:
    - Quand on gagne d'un coté, on perd très souvent voire toujours d'un autre.
    - Il est très rare de gagner sans rien perdre.
    - Quand la solution devient trop complexe à mettre en oeuvre, c'est qu'elle ne convient pas à ce que l'on attend, voire qu'elle est tout bonnement mauvaise.

  3. #3
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Bonjour,

    Je ne connais pas SEAM mais il faut savoir que dans la FAQ, il y a les Q/R sur l'intégration dans Java (en RCP (Swing) et en Web (J2EE)).

    http://www.developpez.net/forums/m2962877-7/
    http://www.developpez.net/forums/m3326642-23/

  4. #4
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 189
    Points : 176
    Points
    176
    Par défaut
    Merci, BIM.
    Depuis mon dernier post, j'ai beaucoup étudié les messages sur la question sur internet (ceux que tu m'a donné aussi).
    Et j'ai trouvé certains compléments vitaux au lien que j'avais mis.

    Pour le moment n'ayant aucune compétence SEAM/Birt Viewer/Runtime, je me suis simplifié la vie en commençant avec un projet SEAM WEB PROJECT (on ferra plus tard un projet Java).

    Résultat, certains éléments sont déjà créés et la création d'entity est ultra simple car on a un wizzard.

    Pour finir, j'arrive à utiliser le runtime, et mes rapports sont bien générés, ouf.
    Ca n'a pas été sans peine.



    Enfin, maintenant j'aimerai aller plus loin.
    J'ai déjà généré du PDF ou du XML, en le codant en dure mais j'aimerai le faire par passage de paramètre, et là encore la galère, ça marche PAS
    Une idée ?

    J'ai mis ça comme URL dans momn code XHTML:
    Code XHTML : Sélectionner tout - Visualiser dans une fenêtre à part
    <s:button id="report" value="Report" view="/sample.pdf?ReportName=report.rptdesign;formatEdition=HTML;" />
    J'ai essayé aussi avec des "&" à la place des ";" mais ca ne marche pas mieux.
    Et je suis obligé de mettre un ";" en fin d'URL sinon SEAM ne compile pas.

    du coté Java, j'ai écris:
    Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
    String formatEdition = request.getParameter("formatEdition");
    Et résultat je peut mettre nimporte qu'elle valeur dans mon XHTML, au niveau Java j'obtiens toujours la valeur NULL.
    Pourquoi donc?



    Encore une chose que j'aimerai faire, c'est d'utiliser la boite des paramètres du Birt Designer si possible.
    Bon là, je n'ai encore rien testé ni même étudié la question.
    Ne pas oublier le bouton RESOLU

    Mes lois informatiques qui n'ont pas encore trouvées de contre exemple:
    - Quand on gagne d'un coté, on perd très souvent voire toujours d'un autre.
    - Il est très rare de gagner sans rien perdre.
    - Quand la solution devient trop complexe à mettre en oeuvre, c'est qu'elle ne convient pas à ce que l'on attend, voire qu'elle est tout bonnement mauvaise.

  5. #5
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Mais quel bavard !

    Bon, commençons par le début : C'est quoi SEAM au juste ?

    Citation Envoyé par birt1976 Voir le message
    J'ai déjà généré du PDF ou du XML, en le codant en dure mais j'aimerai le faire par passage de paramètre, et là encore la galère, ça marche PAS
    Une idée ?
    Je n'ai pas compris la question... Tu veux passer le format en paramètre ?
    Rien de plus simple : le paramètre se nomme __format. Donc tu passes en paramètre __format=HTML ou PDF.
    XML ? Tu n'as pas inversé avec XHTML ?

    Si SEAM appelle directement BIRT, tu n'as pas besoin de récupérer le paramètre, BIRT se débrouille !

    Au fait, encore un truc que je n'ai pas compris, tu as bien produit un rptdesign de ton côté ?

    Pour avoir la boîte des paramètres comme tu dis , il faut faire appel au BIRT Viewer ou faire toi même une boîte.





    PS : Pour l'utilisation de la balise CODE.

  6. #6
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 189
    Points : 176
    Points
    176
    Par défaut
    Citation Envoyé par BiM Voir le message
    Mais quel bavard !
    Et oui, je cause pour essayer d'être compris

    Citation Envoyé par BiM Voir le message
    Bon, commençons par le début : C'est quoi SEAM au juste ?
    SEAM c'est le concurrent de WebSphere.
    C'est un client JAVA qui intégre un serveur Web et un FrameWork.


    Citation Envoyé par BiM Voir le message
    Je n'ai pas compris la question... Tu veux passer le format en paramètre ?
    Rien de plus simple : le paramètre se nomme __format. Donc tu passes en paramètre __format=HTML ou PDF.
    XML ? Tu n'as pas inversé avec XHTML ?
    Ok, je vais essayé sans mon pauvre paramètre, et avec __format.

    Citation Envoyé par BiM Voir le message
    Si SEAM appelle directement BIRT, tu n'as pas besoin de récupérer le paramètre, BIRT se débrouille !
    SEAM appelle le RunTime avec la BirtServlet et BirtEngine.

    Par contre, j'ai une petite question p-e idiote:
    J'ai lu plein de posts et autres, et je n'ai pas bien compris s'il y a une différence entre Birt Viewer et le Birt Runtime.
    Moi, j'ai l'impression que c'est les mêmes outils?

    Citation Envoyé par BiM Voir le message
    Au fait, encore un truc que je n'ai pas compris, tu as bien produit un rptdesign de ton côté ?
    Biensur, j'ai un rptdesign que j'ai fais dans Birt designer.

    Citation Envoyé par BiM Voir le message
    Pour avoir la boîte des paramètres comme tu dis , il faut faire appel au BIRT Viewer ou faire toi même une boîte.
    j'utilise le runTime, ça suffit ?

    Je n'ai pas bien compris la différence entre Viewer et Runtime.


    Merci de tes réponses, et c'est vraiment bien d'avoir une personne aussi Calée que toi sur le forum.


    PS: là, je regarde le FAQ sur l'utilisation d'objet Java dans un dataSet.
    Ce serai mieux pour nous que d'aller sur la base.
    Ne pas oublier le bouton RESOLU

    Mes lois informatiques qui n'ont pas encore trouvées de contre exemple:
    - Quand on gagne d'un coté, on perd très souvent voire toujours d'un autre.
    - Il est très rare de gagner sans rien perdre.
    - Quand la solution devient trop complexe à mettre en oeuvre, c'est qu'elle ne convient pas à ce que l'on attend, voire qu'elle est tout bonnement mauvaise.

  7. #7
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Citation Envoyé par birt1976 Voir le message
    SEAM c'est le concurrent de WebSphere.
    C'est un client JAVA qui intégre un serveur Web et un FrameWork.
    Ok merci

    Citation Envoyé par birt1976 Voir le message
    Ok, je vais essayé sans mon pauvre paramètre, et avec __format.
    Ca donne quoi ?

    Citation Envoyé par birt1976 Voir le message
    Par contre, j'ai une petite question p-e idiote:
    J'ai lu plein de posts et autres, et je n'ai pas bien compris s'il y a une différence entre Birt Viewer et le Birt Runtime.
    Moi, j'ai l'impression que c'est les mêmes outils?

    [...]

    j'utilise le runTime, ça suffit ?

    Je n'ai pas bien compris la différence entre Viewer et Runtime.
    Le Runtime contient : le moteur (Engine) et le visionneur (Viewer).

    En fait, le BIRT Engine est le moteur de génération et le BIRT Viewer te permet de visualiser le résultat.

    Dans l'exemple de la FAQ qui explique comment appeler BIRT d'une application J2EE, il n'y aucun appel au BIRT Viewer, le fichier renvoyé est directement le fichier généré. Il y a par contre appel au BIRT Engine pour générer le fichier (PDF, HTML, XLS ou autre).

    Citation Envoyé par birt1976 Voir le message
    Merci de tes réponses, et c'est vraiment bien d'avoir une personne aussi Calée que toi sur le forum.
    De rien mais je ne suis pas la meilleure sur ce sujet sur le forum

    Citation Envoyé par birt1976 Voir le message
    PS: là, je regarde le FAQ sur l'utilisation d'objet Java dans un dataSet.
    Ce serai mieux pour nous que d'aller sur la base.
    Tout question sera la bienvenue. Dans notre cas, le cadre de l'utilisation de cette méthode était parce que les objets étaient extraits par Hibernate.

  8. #8
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 189
    Points : 176
    Points
    176
    Par défaut
    Pour le __format, pour le moment ça ne marche pas du tout.
    Il y a surement un truc que je n'ai pas compris.
    Je vais chercher un partout sur le net.

    Je l'ai rajouter dans mon URL, et j'ai enlevé le code du servlet qui correspondait au format en me disans que c'était Birt qu'y doit s'en préoccupé, mais je fais p-e fausse route?

    Sinon, au tout début, j'ai tenté de récupérer le paramètre __format en java mais il ne le reconnaissais pas.
    Alors j'ai pensé qu'il devais faire tout tout seul.
    Et résultat, il fait plutot RIEN

    Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
                   	PDFRenderOption options = new PDFRenderOption();
                        options.setOutputFormat(HTMLRenderOption.OUTPUT_FORMAT_PDF);
                        options.setOutputStream(response.getOutputStream());
                        //options.setBaseImageURL(req.getContextPath()+"/images");
                        //options.setImageDirectory(sc.getRealPath("/images"));
                        task.setRenderOption(options);
    En fait j'ai besoin de la derniere ligne de code pour que le catch serve à quelque chose.
    Du coup, j'ai besoin de l'objet options.
    Donc il faut surement taper du code avec le paramètre __format.
    Or j'ai lu à priori qu'il n'y avait rien à faire niveau code.
    Faut-il adapter le code ou pas?


    Sinon, je reviens au viewer.
    Il y a le parametre "FrameSet" qui à l'air intéréssant avec une barre d'outil.
    D'après ce que j'ai, je suis plutot en mode "RUN".
    J'obtiens l'édition directement dans mon navigateur ou dans accrobat reader, c'est un peu aléatoire, je ne sais pas pourquoi.

    Pour le moment, je vais tenter de faire marcher le paramètre __format, car si j'y arrive je pourrai utiliser tous les paramètres si ça me dit.


    Après ça, j'hésaiérai d'intégrer les classes java.
    On a nous aussi une couche qui extrait les données par hibernate.
    Donc ça devrai ressembler.
    Ne pas oublier le bouton RESOLU

    Mes lois informatiques qui n'ont pas encore trouvées de contre exemple:
    - Quand on gagne d'un coté, on perd très souvent voire toujours d'un autre.
    - Il est très rare de gagner sans rien perdre.
    - Quand la solution devient trop complexe à mettre en oeuvre, c'est qu'elle ne convient pas à ce que l'on attend, voire qu'elle est tout bonnement mauvaise.

  9. #9
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Hum, en fait, là tu dis à ton rapport : Quoique tu fasses, je veux du PDF. Donc ça ne risque pas de marcher.

    Dans ton Java, il faut que tu aies quelquechose de plus générique pour supporter les différents formats, c'est à dire ça :
    Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    IRenderOption options = new RenderOption();
    options.setOutputFormat(monFormat);
    options.setOutputStream(response.getOutputStream());
    task.setRenderOption(options);

    Le problème est que tu n'arrives pas à récupérer un paramètre par SEAM (donc rien à avoir avec BIRT).

    Alors, refais ton bouton de cette façon :
    Code XHTML : Sélectionner tout - Visualiser dans une fenêtre à part
    <s:button id="report" value="Report" view="/sample.pdf?ReportName=report.rptdesign;formatEdition=HTML;" />

    Et au lieu de récupérer formatEdition via la request, tu as essayé via response ?

  10. #10
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 189
    Points : 176
    Points
    176
    Par défaut
    J'arrive à obtenir dans ma page Web la bonne URL, déjà un bon point

    URL:
    http://127.0.0.1:8080/BIRT2/sample.p...ort.seam&cid=1


    Par contre, je n'ai pas pigé comment récupérer le paramètre du coté Java.

    Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
    String formatEdition = request.getParameter("__format");

    Sinon, non je n'ai pas tester avec response, d'ailleurs je ne vois meme pas quelle méthode il faut utiliser.
    Pour moi, tout est tellement nouveau, que je suis un peu noyé parfois, (bon souvent).

    Ce qu'il me parait étrange, c'est que j'utilise __format comme si c'était un paramètre quelconque.
    On lui dis de l'envoyer dans l'URL et on agit suivant le paramètre.
    On gagne juste le fait que BIRT se débrouille à choisir le format de l'édition niveau viewer.
    (en fait, je pensais qu'il y aurai moins à coder)



    et que devient le code ci dessous?

    Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    response.setContentType( "application/pdf" ); 
    response.setHeader ("Content-Disposition","inline; filename=test.pdf");
    Ne pas oublier le bouton RESOLU

    Mes lois informatiques qui n'ont pas encore trouvées de contre exemple:
    - Quand on gagne d'un coté, on perd très souvent voire toujours d'un autre.
    - Il est très rare de gagner sans rien perdre.
    - Quand la solution devient trop complexe à mettre en oeuvre, c'est qu'elle ne convient pas à ce que l'on attend, voire qu'elle est tout bonnement mauvaise.

  11. #11
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Guide d'utilisation

    Hum, commençons par la structuration de l'URL...

    Il te faudrait plutôt ça :
    http://127.0.0.1:8080/BIRT2/sample.p...&__format=HTML

    Dans ce cas, dans la partie Java enlève la partie :
    Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
    options.setOutputFormat(monFormat);

    Ensuite, le Java que je t'ai fait modifié c'est pour qu'il puisse gérer tous les formats et pas seulement le PDF.

    Pour finir, en faisant quelques recherches sur internet, il faut que tu déclares ton paramètre dans ton Bean de cette façon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    @RequestParameter private String formatEdition;
    PS : Ne me demande pas de traduire la dernière phrase

  12. #12
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 189
    Points : 176
    Points
    176
    Par défaut
    Citation Envoyé par BiM Voir le message
    Guide d'utilisation balise code
    Intéressant, j'avais l'impression que le forum le faisait tout seul.
    Mais tu devais passer derriere moi à chaque fois, deso.


    Citation Envoyé par BiM Voir le message
    Hum, commençons par la structuration de l'URL...
    Il te faudrait plutôt ça :
    http://127.0.0.1:8080/BIRT2/sample.p...&__format=HTML
    Je veux bien, mais je n'ai pas réussis à mettre quelque chose après le &cid=1.
    Car ce &cid=1 est mis en dynamique.
    je peut mettre facilement:
    __format=HTML;ReportName=report.seam&cid=1
    Résultat dans mon paramètre j'ai
    HTML;ReportName=report.seam

    ou mettre ça:
    ReportName=report.seam;__format=HTML&cid=1
    Et là, ça compile meme pas.


    Citation Envoyé par BiM Voir le message
    Ensuite, le Java que je t'ai fait modifié c'est pour qu'il puisse gérer tous les formats et pas seulement le PDF.
    Oui ca j'avais compris
    Ca peut géré tous les formats, et spécialement celui qu'on passe en paramètre.

    Citation Envoyé par BiM Voir le message
    Pour finir, en faisant quelques recherches sur internet, il faut que tu déclares ton paramètre dans ton Bean de cette façon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    @RequestParameter private String formatEdition;
    PS : Ne me demande pas de traduire la dernière phrase
    Soit.
    Ne pas oublier le bouton RESOLU

    Mes lois informatiques qui n'ont pas encore trouvées de contre exemple:
    - Quand on gagne d'un coté, on perd très souvent voire toujours d'un autre.
    - Il est très rare de gagner sans rien perdre.
    - Quand la solution devient trop complexe à mettre en oeuvre, c'est qu'elle ne convient pas à ce que l'on attend, voire qu'elle est tout bonnement mauvaise.

  13. #13
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Si j'ai bien compris, tu as réussi à récupérer ton paramètre ?
    ... mais il ne le parserai pas correctement ?

  14. #14
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 189
    Points : 176
    Points
    176
    Par défaut
    Ayer, j'ai trouvé.

    En fait, dans l'URL, il faut mettre &amp; et non & ou ;
    J'ai trouver ça sur un site grace à google.

    J'avais demandé à un collègue qui m'indiquait que ce n'était pas possible en JSF
    Et voilà, moi j'ai trouvé, YOUPI

    Quand j'ai mis mon &amp; je ne savais meme pas ce que ca voulais dire.
    Mais bon, depuis le début, je fais beaucoup de chose au feeling.
    Et ça passe.

    Donc maintenant, j'ai mon paramètre et j'arrive à avoir tous les formats que je souhaites.
    Merci BEACOUP pour tes adaptations de mon code pour prendre en compte tous les formats.


    Je vais essayer les autres paramètre du BIRT VIEWER.
    Je voudrai bien voir ce que fait le FRAMESET.


    NB: je crois que la discution est loin d'être finie, mais vaut mieux pas trop surcharger un topic.
    Aussi, disons que celle-ci est Résolu.

    Et surement à bientot pour d'autres questions autour du viewer.
    Ne pas oublier le bouton RESOLU

    Mes lois informatiques qui n'ont pas encore trouvées de contre exemple:
    - Quand on gagne d'un coté, on perd très souvent voire toujours d'un autre.
    - Il est très rare de gagner sans rien perdre.
    - Quand la solution devient trop complexe à mettre en oeuvre, c'est qu'elle ne convient pas à ce que l'on attend, voire qu'elle est tout bonnement mauvaise.

  15. #15
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 189
    Points : 176
    Points
    176
    Par défaut
    Ah encore une question sur les formats.

    J'ai cru lire sur la plupart des messages que le runtime/Viewer ne gérait que le PDF et HTML.
    Et là, je viens de tester, le PDF et HTML marchent très bien.
    Mais les autres formats ne passent pas telsque XLS, DOC, PPT et POSTCRIPT.

    Pourtant dans le BIRT designer, ils utilisent le viewer également, et on a accès à ces formats.

    Alors pourquoi nous par le runtime, on aurait pas accès aux mêmes formats ??
    Ne pas oublier le bouton RESOLU

    Mes lois informatiques qui n'ont pas encore trouvées de contre exemple:
    - Quand on gagne d'un coté, on perd très souvent voire toujours d'un autre.
    - Il est très rare de gagner sans rien perdre.
    - Quand la solution devient trop complexe à mettre en oeuvre, c'est qu'elle ne convient pas à ce que l'on attend, voire qu'elle est tout bonnement mauvaise.

  16. #16
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Alors petite explication :
    Le HTML s'ouvre avec un navigateur.
    Le PDF peut s'ouvrir dans un navigateur à condition que celui-ci est un Acrobat Reader like embarqué.
    Le DOC, PPT et XLS pourraient s'ouvrir dans un navigateur mais c'est un format spécial d'enregistrement du document. Ici, nous avons un format classique qui s'ouvre directement avec MS Office (qui n'est pas embarqué dans le navigateur).
    Le PostScript est un flux destiné à l'imprimante.

  17. #17
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 189
    Points : 176
    Points
    176
    Par défaut
    Comme toujours tu es très précis.

    Mais ça veut dire que si je veux du DOC, XLS, PPT, il faut que je passe en mode FRAMESET plutot que RUN?

    Précision que j'ai trouvé sur le net:
    Le RUN ouvre dans la même fenêtre (navigateur web: HTML, PDF).
    Le FrameSet s'ouvre dans une autre fenêtre d'application natif à ce qu'il parait (HTML, PDF, XLS).

    On apprend beaucoup ici
    Ne pas oublier le bouton RESOLU

    Mes lois informatiques qui n'ont pas encore trouvées de contre exemple:
    - Quand on gagne d'un coté, on perd très souvent voire toujours d'un autre.
    - Il est très rare de gagner sans rien perdre.
    - Quand la solution devient trop complexe à mettre en oeuvre, c'est qu'elle ne convient pas à ce que l'on attend, voire qu'elle est tout bonnement mauvaise.

  18. #18
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Pour avoir la barre d'outil du Viewer, il faut utiliser la méthode FrameSet.

    La méthode run se limite à ouvrir le fichier sans la barre d'outil du Viewer.

    En fait, lorsque tu renvoies ton fichier, tu peux définir l'ouverture d'une application grâce au type mime de celui-ci. Et je te souhaite bon courage pour le xls parce que je n'ai pas noté ce que c'était

    Après, quand on veut pouvoir exporter en plusieurs formats, le mieux est d'ouvrir le rapport en frameset puis de faire un export grâce aux fonctionnalités du Viewer.

    On notera que la génération n'est pas effectuée à nouveau si on a pensé à séparer les étapes run et render lors de la génération (voir FAQ).

  19. #19
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 189
    Points : 176
    Points
    176
    Par défaut
    bon, encore un problème:
    Je n'arrive pas à me mettre en FRAMSET.

    Mon code XHTML est le suivant:
    Code XHTML : Sélectionner tout - Visualiser dans une fenêtre à part
    <s:button id="report" value="Report" view="/sample.pdf?__format=PDF&amp;ReportName=report.rptdesign" />

    J'ai beau tenté de mettre un code du genre:
    Code XHTML : Sélectionner tout - Visualiser dans une fenêtre à part
    http://sitePrefix/birt-viewer/frameset?option1=value1;option2=value2;...

    Mais, j'ai l'air d'avoir besoin du report.rptdesign alors que mon rptdesign est dans un fichier sample.XHTML
    et le sample.pdf permet d'executer la commande du viewer.

    Pour le moment, je ne vois pas comment modifier mon code pour spécifier le mode FRAMESET ?
    Ne pas oublier le bouton RESOLU

    Mes lois informatiques qui n'ont pas encore trouvées de contre exemple:
    - Quand on gagne d'un coté, on perd très souvent voire toujours d'un autre.
    - Il est très rare de gagner sans rien perdre.
    - Quand la solution devient trop complexe à mettre en oeuvre, c'est qu'elle ne convient pas à ce que l'on attend, voire qu'elle est tout bonnement mauvaise.

  20. #20
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 189
    Points : 176
    Points
    176
    Par défaut
    Bon, je m'en sors pas du mode FRAMESET.

    J'ai trouvé sur un site, le parametre __designType=framset.
    Mais cela ne marche pas, il ne s'en occupe même pas et le supprime même de l'URL.
    Sur le site officiel BIRT, ils n'en parle même pas, donc ça me suprends pas trop que ça ne marche pas.

    J'arrive pas à mettre mon url avec frameset.

    Par contre, j'ai remplacer le paramètre ReportName par __report, c'est plus propre et cela marche toujours.

    Il n'existerai pas un paramètre pour passer du RUN au FRAMESET plutot que de changer l'URL.
    Car le changement d'URL est plutot problèmatique vu que la mienne et directement branchée sur un fichier pdf (cf dernier post pour code)
    Ne pas oublier le bouton RESOLU

    Mes lois informatiques qui n'ont pas encore trouvées de contre exemple:
    - Quand on gagne d'un coté, on perd très souvent voire toujours d'un autre.
    - Il est très rare de gagner sans rien perdre.
    - Quand la solution devient trop complexe à mettre en oeuvre, c'est qu'elle ne convient pas à ce que l'on attend, voire qu'elle est tout bonnement mauvaise.

Discussions similaires

  1. Réponses: 8
    Dernier message: 03/02/2011, 16h42
  2. [2.3.2] Intégrer rapport Birt dans Plateforme Pentaho
    Par Nicolas281088 dans le forum BIRT
    Réponses: 0
    Dernier message: 09/04/2009, 23h56
  3. Intégrer birt dans une servlet
    Par eclipselinux dans le forum BIRT
    Réponses: 1
    Dernier message: 08/04/2009, 11h37
  4. [2.2.2] Intégrer le viewer BIRT dans une application Flex
    Par o-l-i-v-i-e-r dans le forum BIRT
    Réponses: 1
    Dernier message: 27/05/2008, 17h08
  5. [Java][5.5.1] Intégrer birt dans netbeans
    Par aliomrani1 dans le forum BIRT
    Réponses: 2
    Dernier message: 13/06/2007, 09h43

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