Seite 1 von 1

Export als PDF aus Java heraus

Verfasst: Mo 12. Aug 2019, 14:14
von schalueck
Hallo,
ich kann derzeit nicht eine Writer-Datei aus Java heraus als PDF abspeichern. MS-Word, ODT und Text klappen aber tadellos.
Die Fehlermeldung lautet: com.sun.star.io.IOException: SfxBaseModel::impl_store <file:///C:/temp/test.pdf> failed: 0x81a

Ich hatte dazu den FilterName auf "PDF - Portable Document Format" eingestellt gehabt.
Irgendjemand mit einer guten Idee dazu??
Danke
Elmar

Re: Export als PDF aus Java heraus

Verfasst: Mi 14. Aug 2019, 08:58
von gogo
... ich kann kein Java, aber eine IO-Exception hat immer was mit Lese und Schreibzugriffen zu tun - evtl. ist ein Pfad nicht korrekt - impl_store würde bedeuten, dass das Programm file:///C:/temp/test.pdf nicht schreiben kann - sind die slashes korrekt? gibt's Probleme mit temp vs Temp ?
... wie schon gesagt ... Java ist eine Insel ... bevölkert von Pythons ;)

Re: Export als PDF aus Java heraus

Verfasst: Mi 14. Aug 2019, 14:26
von schalueck
Hallo gogo,
Java kann ich schon (aber kein Python :P ). Den normalen IO-Fehler kann ich ausschließen, da ich mit einem anderen FilterName (z.B. Text) es geschafft habe, im gleichen Pfad eine Textdatei zu schreiben. Es muss eher am PDF-Export liegen. Noch eine weitere Idee dazu?
Danke
Elmar

Re: Export als PDF aus Java heraus

Verfasst: Mi 14. Aug 2019, 17:28
von gogo
... wie lautet denn der Befehl mit dem Du den Export startest?

Re: Export als PDF aus Java heraus

Verfasst: Do 15. Aug 2019, 08:21
von schalueck
fileURL ist dabei "file:///C:/temp/test.pdf". Arbeite ich mit dem FilterName Text und der Endung .txt im Aufruf, klappt es.

private static void exportDocumentToPDF(XTextDocument xTextDocument, String fileURL) {

try {
XStorable xStorable = (XStorable)UnoRuntime.queryInterface(XStorable.class, xTextDocument);
PropertyValue[] storeProps = new PropertyValue[2];
storeProps[0] = new PropertyValue();
storeProps[0].Name = "Overwrite";
storeProps[0].Value = new Boolean(true);
storeProps[1] = new PropertyValue();
storeProps[1].Name = "FilterName";
storeProps[1].Value = "PDF - Portable Document Format";
xStorable.storeToURL(fileURL, storeProps);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}



}

Re: Export als PDF aus Java heraus

Verfasst: Do 15. Aug 2019, 11:04
von schalueck
Hallo gogo,
ich habe meinen Fehler gefunden. Der FilterName muss für den Export auf "writer_pdf_Export" gesetzt sein.
Danke für das präzise Nachfragen.
Elmar