Haz tu Pregunta

Revision history [regresar]

click to hide/show revision 1
versión inicial

¿Cambios en la forma de interactuar con java - UNO - libreOffice desde OO-3.3?

Hola,

¿Ha cambiado algo en el modo de interaccionar desde java con libre office desde la versión 3.3?

Tengo un applet que es capaz de funcionar correctamente con OO-3.3, (arrancando el proceso OO con -accept y un puerto) El applet abre un documento de una base de datos y escucha el evento de guardar o cerrar el documento para subirlo a la base de datos.

He recompilado el applet con las librerías java de la instalación de libreOffice-4.2.6.3, y no funciona correctamente.

Con libreOffice (writer), cuando edito varios documentos al mismo tiempo, cuando cierro un documento, al intentar abrir otro, libreOffice lo abre y se genera un mensaje "libreOffice dejó de funcionar, Windows está buscando una solución al problema", si se acepta, el proceso de libreOffice (soffice.bin) desaparece y con él, el resto de documentos abiertos.

Parece que funciona si solo trabajo con un documento a la vez, pues si cuando detecto un cierre no hay mas documentos activos abiertos en el desktop, termino el desktop explícitamente (desktop.terminate()). Así que la próxima instancia de libreOffice es totalmente nueva. Si no cierro el desktop también se produce el problema anterior al abrir un nuevo documento.

Antes de cerrar el documento libero removeCloseListener, removeModifyListener, releaseDispatchProviderInterceptor y desktop.removeTerminateListener.

¿Hay algun codigo de ejemplo o un buen manual que describa como hacer esta integración con libreOffice?

Muchas gracias.

Javi.