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.