Si usa PL/SQL, puede usar el paquete UTL_FILE, la diferencia con el uso de sql+ spool es que los archivos se escriben en el sistema de archivos del servidor. UTL_FILE tiene una serie de limitaciones, por lo que una alternativa en el lado del servidor sería usar procedimientos almacenados de Java.