Solución:
Algunas sugerencias rápidas:
-
imprimir desde java: consulte Un programa básico de impresión
-
estado del trabajo de impresión: es posible que pueda obtener algo útil utilizando un PrintJobListener:
Las implementaciones de esta interfaz de escucha deben adjuntarse a un DocPrintJob para monitorear el estado del trabajo de la impresora. Estos métodos de devolución de llamada se pueden invocar en el subproceso que procesa el trabajo de impresión o en un subproceso de notificación creado por un servicio. En cualquier caso, el cliente no debe realizar un procesamiento prolongado en estas devoluciones de llamada.
Un muy buen tutorial de impresión: http://download.oracle.com/javase/tutorial/2d/printing/index.html
También verifique las respuestas a mi pregunta sobre impresoras, la API de trabajo de impresora es lo que está buscando, pero verificar esto también ayudará:
¿Cómo enviar datos de JTable a un trabajo de impresión desde la aplicación Java?