Hola:
WindowListener sirve si tienes una ventana que se cierra al terminar la aplicación. Si no tienes ventanas (dices que tu aplicación corre en background), debes añadir un "shutdown hook". Aquí tienes un ejemplo
http://chuwiki.chuidiang.org/index.p...e_Java_termina
Se bueno.