Vielleicht kann mir jemand weiterhelfen, ich versuche folgendes:
1. Verbindung herstellen
2. eine Datei a öffnen
3. Datei a in PDF a umwandeln
4. Datei a schließen
-> und das ganze in einer Schleife, die 2x hintereinander ausgeführt wird.
Wenn ich die Schleife weglasse, funktioniert alles anstandslos, nur mit Schleife bekomme ich eine Fehlermeldung ( $Proxy8.storeAsURL(Unknown Source)) in der Zeile, in der gespeichert werden soll.
Hier der relevante Code:
for (int i=0;i<2;i++)
{
if (simul.xRemoteServiceManager==null)
{
simul.xRemoteServiceManager = getRemoteServiceManager(
"uno:socket,host=localhost,port=8100;urp;StarOffice.ServiceManager");
}
Object desktop = xRemoteServiceManager.createInstanceWithContext(
"com.sun.star.frame.Desktop", xRemoteContext);
XComponentLoader xComponentLoader = (XComponentLoader)UnoRuntime.queryInterface(
XComponentLoader.class, desktop);
PropertyValue[] loadProps = new PropertyValue[1];
PropertyValue x=new PropertyValue();
x.Name="Overwrite";
x.Value=new Boolean(true);
loadProps[0]=x;
XComponent xTextComponent = xComponentLoader.loadComponentFromURL(
"file:///c:/A.sxw", "_blank", 0, loadProps);
XTextDocument xTextDocument= (XTextDocument)UnoRuntime.queryInterface(
XTextDocument.class, xTextComponent);
XText xText=xTextDocument.getText();
XStorable xStorable = (XStorable)UnoRuntime.queryInterface(XStorable.class, xTextComponent);
PropertyValue[] storeProps = new PropertyValue[2];
storeProps[0] = new PropertyValue();
storeProps[0].Name = "FilterName";
storeProps[0].Value = "writer_pdf_Export";
storeProps[1]=x;
xStorable.storeToURL("file:///c:/A.pdf",storeProps);
XCloseable xDocCloser =
(XCloseable)UnoRuntime.queryInterface(XCloseable.class, xTextDocument);
xDocCloser.close(true);
}
[Java] Fehlermeldung bei der PDF-Umwandlung
Moderator: Moderatoren
Re: [Java] Fehlermeldung bei der PDF-Umwandlung
Das sollte eigentlich machbar sein. Ich mache in Java etwas ähnliches. Mit dem Unterschied, dass ich die Dateien nur einmal öffne, dafür aber mehrfach exportiere und erst beim Beenden der Anwendung wieder schließe. Das mache ich so nur aus Zeitgründen.edv hat geschrieben:Vielleicht kann mir jemand weiterhelfen, ich versuche folgendes:
1. Verbindung herstellen
2. eine Datei a öffnen
3. Datei a in PDF a umwandeln
4. Datei a schließen
-> und das ganze in einer Schleife, die 2x hintereinander ausgeführt wird.
Ein weiterer Unterschied ist, dass ich das exportierte PDF nicht mehrfach unter dem selben Namen speichere und auch nicht das Overwrite Property verwende.
Frage: Was passiert, wenn du deine Export-Zeile direkt mehrfach hintereinander ausführst? Also so:
xStorable.storeToURL("file:///c:/A.pdf",storeProps);
xStorable.storeToURL("file:///c:/A.pdf",storeProps);
xStorable.storeToURL("file:///c:/A.pdf",storeProps);
Knallt es dann auch?
Verstehen tue ich die Meldung nicht, da zumindest in deinem geposteten Code "storeToURL" und nicht "storeAsURL" steht. Das "storeAsURL" mit PDF nicht klappt und Exceptions schmeißt ist klar. Nur das scheinst du ja gar nicht zu machen.edv hat geschrieben:Wenn ich die Schleife weglasse, funktioniert alles anstandslos, nur mit Schleife bekomme ich eine Fehlermeldung ( $Proxy8.storeAsURL(Unknown Source)) in der Zeile, in der gespeichert werden soll.
With kind regards
hol.sten