В Liberty каждый объект DataHandler может быть записан в поток вывода только один раз.
Запись объекта DataHandler в объект OutputStream больше одного раза приведет к пустому файлу.
После вызова метода javax.activation.DataHandler.writeTo(OutputStream) объект DataHandler нельзя передавать в другие методы, возвращать и сохранять для использования в будущем.
В качестве обходного решения можно создать новый объект DataHandler и инициализировать его данными, которые уже получены из первого объекта DataHandler посредством метода writeTo. Пример: