Re: Mit XSLT erzeugte XML-Dateien wieder löschen
- From: Danny Ammon <DannyAmmon@xxxxxxxxxxxxx>
- Date: Fri, 14 Jul 2006 14:02:16 +0200
Hallo Ralf,
Dein Workaround funktioniert, vielen Dank!
Wäre natürlich schön gewesen, wenn sich der Transformer-Stream direkt schließen ließe, aber so geht's auf jeden Fall...
Die Sache ist dann wohl was für die nächste Java-Version...
Viele Grüße,
Danny
Ralf Ullrich schrieb:
.
Also mein ProcExplorer zeigt, dass die ziel.xml offen bleibt, nachdem der Transformer mit ihr fertig ist. Leider gibt es in der API keine Möglichkeit an den Stream heranzukommen, den der Transformer zum schreiben verwendet. Ich bin mir nicht sicher, aber das könnte ein Bug sein. (In den Javadoc ist aber AFAIK nirgends spezifiziert, was passieren soll, es ist also auch legitim, wenn der Transformer den Stream offen lässt.)
Auf jeden Fall lässt es sich leicht umschiffen, wenn man das StreamResult, statt über den Convenience Konstruktor mit File Argument, direkt aus einem OutputStream baut:
...
StreamResult xmlresult = new StreamResult();
xmlresult.setOutputStream(new FileOutputStream(ziel));
xmlresult.setSystemId(ziel.toURI().toString());
...
// Quelle und Ziel löschen
quelle.delete(); // funktioniert!
xmlresult.getOutputStream().close();
ziel.delete(); // funktioniert jetzt auch!
AFAIK zeigt das wieder einmal, dass man Convenience Methoden und Konstruktoren nur verwenden sollte, wenn man genau weiß, welche Konsequenzen das hat, und ansonsten sollte man alles lieber selbst machen und so die Kontrolle über das Geschehen behalten.
cu
- References:
- Mit XSLT erzeugte XML-Dateien wieder löschen
- From: Danny Ammon
- Re: Mit XSLT erzeugte XML-Dateien wieder löschen
- From: Frank Dreyer
- Re: Mit XSLT erzeugte XML-Dateien wieder löschen
- From: Danny Ammon
- Re: Mit XSLT erzeugte XML-Dateien wi eder löschen
- From: Ralf Ullrich
- Re: Mit XSLT erzeugte XML-Dateien wi eder löschen
- From: Danny Ammon
- Re: Mit XSLT erzeugte XML-Dateien wi eder löschen
- From: Ralf Ullrich
- Mit XSLT erzeugte XML-Dateien wieder löschen
- Prev by Date: Re: ResultSet#close()
- Next by Date: Re: Word-Serienbriefe aus Java Anwendung generieren
- Previous by thread: Re: Mit XSLT erzeugte XML-Dateien wi eder löschen
- Next by thread: Re: Systemlautstärke in Java verändern?
- Index(es):
Relevant Pages
|
Loading