Code: Alles auswählen
String path = System.getenv("UNO_PATH");
path = path.replace('\\', '/');
String commandLine = "\"" + path + "/soffice\" -nodefault -norestore -nocrashreport -nolockcheck -nologo -accept=" + interProcCommunicationString + ";urp;StarOffice.ServiceManager";
Runtime.getRuntime().exec(commandLine);
In diesem Zustand kann ich ganz normal den Writer parallel zur Javaanwendung öffnen und auch wieder schließen.
Im nächsten Schritt öffnet die Javaanwendung intern den Writer und erzeugt ein leeres Dokument und zeigt dieses an. Dabei stellt das OOoBean ein Verbindung zum Office her.
Code: Alles auswählen
oBean.startOOoConnection("uno:" + interProcCommunicationString + ";urp;StarOffice.ServiceManager");
Wenn ich jetzt aber im Javaprogramm den Programmteil beende, der das leere Officedokument geöffnet habt, kann ich zwar wieder parallel den Writer öffnen aber nie wieder schließen.
Es spielt auch keine Rolle, wenn ich beim Schließen stopOOoConnection oder terminate Desktop aufrufe. Ich kann den parallel geöffneten Writer nicht schließen.
Code: Alles auswählen
this.oBean.getOOoDesktop().terminate();
this.oBean.stopOOoConnection();
Nur hab ich noch ned ganz rausbekommen, wie das funktionieren soll. Vor allem da es ja funktioniert, wenn das OOoBean noch nix gemacht hat und wenn es auch das leere Office Dokument anzeigt.
Ich hoffe das hier jemand eine Antwort hat.
Gruß Carsten