Bonjour à tous,
Je cherche à exploiter l'API OpenOffice.org (pour l'instant en version 2.4 ou 2.5) dans une application Java. Avec une application normale, aucun problème. La question se corse parce que l'application est basée sur le framework OSGi (en l'occurrence equinox). Intuitivement, on imagine deux solutions:
- Créer un bundle enveloppe pour les jars fournis par OpenOffice que l'on intègre dans la "target plateform" et auquel on ajoute un MANIFEST qui permet d'exporter les packages qui nous intéressent.
Cette solution pose problème car d'une part les jar en question ne sont plus à leur place "native" ce qui fait que le Bootstrap ne trouve pas l'exécutable OpenOffice et d'autre part, l'évolutivité du système est affaiblie car on ne peut plus installer une nouvelle version d'OpenOffice sans devoir intervenir de nouveau dans l'application.
- Déclarer dans le bootclasspath de la plateforme OSGi l'emplacement où sont situées les classes d'OpenOffice (i.e. les jar ridl.jar, unoil.jar, etc...). Avec une telle configuration, le runtime Java trouve sans problème les classes de l'API OpenOffice mais là encore impossible de trouver l'exécutable (BootstrapException : no office executable found !
).
Quelque possède-t-il une solution ? Merci d'avance !!
Partager