Liberty platformon mindegyik DataHandler objektum csak
egyszer írható ki a kimeneti adatfolyamba.
A DataHandler objektum többszöri
kiírása OutputStream objektumba üres fájlt eredményezhet.
A
javax.activation.DataHandler.writeTo(OutputStream) metódus
meghívása után nem adhatja át a DataHandler objektumot másik metódusnak, nem
adhatja vissza vagy tárolhatja azt későbbi felhasználás céljából.
Áthidaló megoldásként létrehozhat új DataHandler objektumot és inicializálhatja
a DataHandler objektumot azzal a tartalommal, amely már beolvasásra került a
meglévő DataHandler objektumból a writeTo metódus segítségével. Például:
|
File f = new File("received_image"); if (f.exists()) { f.delete(); } FileOutputStream fos = new FileOutputStream(f); // Write the DataHandler object to the output stream. img_in.writeTo(fos); // Create a new DataHandler object and initialize it with // the content that was retrieved using the writeTo method above. FileDataSource fos_out = new FileDataSource(f); DataHandler img_out = new DataHandler(fos_out); return img_out; |