Bonjour,
Je ne sais pas si je suis dans le bon forum. Je cherche à utiliser l'outil de conversion JODConverter. J'arrive à l'installer par cette commande que je tape dans le terminal shell (je développe sur Mac). OpenOffice qui est bien installé s'ouvre alors bien en arrière-plan. J'essaye alors ce code Java pour effectuer une conversion d'un fichier Excel en fichier PDF. Ca fonctionne également.
Cependant, cette solution ne fonctionne plus lorsque j'exécute cette ligne de commande (pour ouvrir OpenOffice en arrière-plan) directement dans le code Java avant le code de conversion, par ce code :
Bien que OpenOffice s'ouvre également en arrière-plan par cette méthode, une exception "java.net.ConnectException: Connection refused" est levée sur la ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 try { Runtime.getRuntime().exec(new String[]{"soffice", "-headless", "-accept=\"socket,host=127.0.0.1,port=8100;urp;\"", "-nofirststartwizard"}); } catch (IOException ex) { Logger.getLogger(Export.class.getName()).log(Level.SEVERE, null, ex); }
Par contre, si je fais l'exécution de la ligne de commande dans le code Java avec la conversion sur une plate-forme Windows, cela marche. C'est sur Mac que ça ne marche que lorsque j'externalise l'exécution de la ligne de commande manuellement dans le terminal et non dans le code Java avec le code de conversion. Est-ce une histoire de chemin dans la ligne de commande ? Pourtant, je spécifie bien le chemin absolu depuis la racine du disque dur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part connection.connect();
Merci pour vos réponses, si vous en avez.
Partager