Problema com PrinterJob e impressora compartilhada

Pessoal, estou com a seguinte função abaixo:

[code]
public void print (JPanel painelGrafico) {
PrinterJob job = PrinterJob.getPrinterJob();
PageFormat pf = job.defaultPage();
PageFormat pf2 = job.pageDialog(pf);

    if (pf2 != pf) {
        job.setPrintable((Printable)painelGrafico, pf2);
        if (job.printDialog()) {
            try {
                job.print();
            }
            catch (PrinterException e) {
                System.out.println("Erro");
            }
        }
    }
}[/code]

O problema é o seguinte, o sistema funciona bem com impressoras em rede que possuem um IP próprio, porém não funciona com impressoras simplesmente compartilhadas por algum pc na rede, dá um erro de impressão acusado naquela bandeja de impressão que aparece perto do relógio do windows mas não entra no catch da função. Alguém já passou por isso ou sabe como resolver?