PB avec le HowtoIntegrateJasperReports pou rails

Hello,

dans ma première appli RoR qui a besoin de la génération d’un document
au format pdf dont le look est un peu ‘travaillé’, j’ai mis en pratique
le HowtoIntegrateJasperReports.
http://wiki.rubyonrails.com/rails/pages/HowtoIntegrateJasperReports#60867

En mode développement cela fonctionne et le résultat obtenu correspond à
ce qui est attendu.

Je suis entrain de monter l’environement de pré-production, et je suis
confronté au fait que l’appel java que j’ai repris du Howto cherche à
afficher sur un DISPLAY l’appel au programme java.

 pipe = IO.popen "java -cp \"#{interface_classpath}\"

XmlJasperInterface -o#{output_type} -freports/#{report_design}
-x#{select_criteria}", “w+b”

En mode développement, sur mon poste cela ne génait pas, par contre sur
le serveur de pré-prod l’exécution de l’appel java se plante il ne
trouve pas de DISPLAY…

Vous l’aurez deviner, je suis au niveau zéro ou presque en ce qui
concerne java.

Y a t il une solution pour que l’appel java ne cherche pas d’interface
graphique pour s’exécuter ?

Bien conscient que ma question déborde du cadre RoR, si certain d’entre
vous ont mis en place ce ca de figure, vous aurez peu être des pistes à
me suggérer.

Merci d’avance.

AX

On 3/23/07, A.TONX [email protected] wrote:

[…]
Y a t il une solution pour que l’appel java ne cherche pas d’interface
graphique pour s’exécuter ?

Bien conscient que ma question déborde du cadre RoR, si certain d’entre
vous ont mis en place ce ca de figure, vous aurez peu être des pistes à
me suggérer.

Je n’ai jamais essayé, mais cela me semble bien coller au “headless
mode” de Java:

Et donc rajouter -Djava.awt.headless=true sur le lancement de Java.

Ol.

On 3/24/07, Olivier G. [email protected] wrote:

Je n’ai jamais essayé, mais cela me semble bien coller au “headless
mode” de Java: Oracle Java Technologies | Oracle

Et donc rajouter -Djava.awt.headless=true sur le lancement de Java.

Exactement, le mode headless permet précisément de lancer la JVM sans
avoir d’écran.


Nicolas D.
N’imprimez ce mail que si vous ne savez pas le lire sur l’écran : les
électrons se recyclent bien, le papier, beaucoup moins bien.

Olivier G. wrote:

trouve pas de DISPLAY…

Et donc rajouter -Djava.awt.headless=true sur le lancement de Java.

Ol.


Railsfrance mailing list
[email protected]
http://lists.rubyonrails.fr/mailman/listinfo/railsfrance

Super,

cela fonctionne impécable sur ma plateforme de dev, il me reste à
valider sur la pré-prod :slight_smile:

pipe = IO.popen “java -Djava.awt.headless=true -cp
"#{interface_classpath}" XmlJasperInterface -o#{output_type}
-freports/#{report_design} -x#{select_criteria}”, “w+b”

merci beaucoup pour vos réponses.

AX

À mon avis, tu peux regarder du coté de cette option pour tenter de
modifier l’ouverture d’un DISPLAY en l’ouverture d’un fichier sur disque
en local… Il faut que ton output_type change pour le bon !

-o#{output_type}

Bon courage !

Merci pour ta réponse, j’ai pris l’option proposé par Olivier et Nicolas
qui fonctionne parfaitement dans mon cas.