Tekintse át a javax.activation.DataHandler objektum használatát

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:

< span class="Code"> < "JavaType"> Fájl < /span> f = < span class="JavaKeyword"> new < /span> Fájl ("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;