Imprimir em impressora secundária JasperReport

Caros, boa noite.
Estou um quanto tanto perdido em um problema.
Preciso imprimir o mesmo relatório feito em Jasperreports em duas impressoras sem interação do usuário.
Na primeira impressora consegui imprimir normalmente através do código JasperPrintManager.printReport(print, false);
Agora como posso imprimir na segunda impressora?
Meu projeto é em JSF e ambas as impressoras estão instaladas no servidor via usb.

Você conseguiu imprimir diretamente por ter usado a impressora padrão.
Provavelmente você precisará de script para identificar e selecionar a impressora secundária.
Isso, no meu entendimento, não tem a ver com o jasper report, pois o mesmo roda sobre o SO.

Saberia alguma forma de fazer isso em Java Web? O Cliente não precisa especificamente selecionar a impressora, se tivesse um modo de setar o endereço dela antes de imprimir já ajudaria.
Estava lendo sobre PrintService e PrinterJob em Java, mas ambos os exemplos utilizam a impressora padrão.

Cara, existem problemas na vida para os quais não existe uma solução pronta (tipo a fórmula de Bháskara).
1 - https://stackoverflow.com/questions/15274328/how-to-get-the-list-of-printers-in-java
2 - https://stackoverflow.com/questions/14885993/how-do-i-specify-the-printer-i-want-to-use-in-java
Mas, você pode quebrar em pequenas partes e, então, resolver cada situação de um modo específico.

1 curtida

Obrigado pela dica amigo.
Consegui implantar utilizando o seguinte método

PrintRequestAttributeSet printRequestAttributeSet = new HashPrintRequestAttributeSet();

	printRequestAttributeSet.add(new MediaPrintableArea(0, 0, print.getPageWidth(), print.getPageHeight(), MediaPrintableArea.INCH));	
	//printRequestAttributeSet.add(MediaSizeName.ISO_A4);
	PrintServiceAttributeSet printServiceAttributeSet = new HashPrintServiceAttributeSet();
	printServiceAttributeSet.add(new PrinterName(configuracoes.getImpressora1(), null));
			JRPrintServiceExporter exporter = new JRPrintServiceExporter();
	SimplePrintServiceExporterConfiguration configuration = new SimplePrintServiceExporterConfiguration();
	configuration.setPrintRequestAttributeSet(printRequestAttributeSet);
	configuration.setPrintServiceAttributeSet(printServiceAttributeSet);
	configuration.setDisplayPageDialog(false);
	configuration.setDisplayPrintDialog(false);
	exporter.setExporterInput(new SimpleExporterInput(print));			
	exporter.setConfiguration(configuration);
	exporter.exportReport();

Acabei me deparando em outro problema, consigo imprimir caso a impressora esteja conectada via USB, mas tem uma impressora compartilhada em outro pc que não consegui imprimir de forma alguma.
Alguem saberia me ajudar?