Imprimir Direto do Sistema

9 respostas Resolvido
R

Boa tarde,

Estou com um problema, criei um projeto e fiz um relatório em Jasper, e tenho a opção de gerar em PDF e de Imprimir.
Rodando ele dentro do InteliJ ele funciona normal, tanto gera PDF , quanto imprime na impressora. Porém quando publico o projeto no tomcat, ele apenas gera o PDF, e nao imprime mais. Segue o código da impressão.

List listaJasper = new ArrayList()

listaJasper.add(print)

PrintRequestAttributeSet printRequestAttributeSet = new HashPrintRequestAttributeSet();

printRequestAttributeSet.add(MediaSizeName.ISO_A4)

PrintServiceAttributeSet printServiceAttributeSet = new HashPrintServiceAttributeSet();

JRPrintServiceExporter exporter = new JRPrintServiceExporter()

exporter.setExporterInput(SimpleExporterInput.getInstance(listaJasper))

SimplePrintServiceExporterConfiguration configuration = new SimplePrintServiceExporterConfiguration()

configuration.setPrintRequestAttributeSet(printRequestAttributeSet)

configuration.setPrintServiceAttributeSet(printServiceAttributeSet)

configuration.setDisplayPageDialog(false)

configuration.setDisplayPrintDialog(true)

exporter.setConfiguration(configuration)

exporter.exportReport()

9 Respostas

darlan_machado

Por acaso está tentando imprimir direto, rodando pelo tomcat?
Já pensou que, sendo uma aplicação para fins comerciais, você não terá acesso ao servidor onde ela irá rodar e só poderá gerar o pdf, através de download, pelo browser?

R

Darlan, sim, mas veja estou fazendo um sistema e preciso que o mesmo imprima direto, pois tem processos que seria inviável a impressão via PDF. Isso não tem como ?

darlan_machado

Se for web, dificilmente.
Entenda, há diferenças enormes entre um sistema desktop e um sistema web.
Salvo se você tiver permissão para imprimir diretamente do servidor, eu não vejo nenhuma alternativa para fazer isso de outra maneira.

R

Certo. Então como solução, gostaria que ele pelo menos abrisse o relatório pronto pra imprimir com o JasperView, vi que no software da SIENGE eles usam assim. Sabe como fazer isso ?

R

Fiz teste no meu local usando JasperViewer.viewReport(print), e deu certo, Colocando no tomcat pra testar.

darlan_machado

Sinceramente, não conheço esse sistema (sienge).
Além disso, o custo de processar a informação e abrir o jasperviewer é o mesmo que processar e devolver o PDF…
De qualquer forma, aqui tem uma opção (que eu nunca usaria, mas se quiser arriscar)

darlan_machado
Solucao aceita

Sim, vai funcionar.
Mas, por favor, entenda que você tem um ambiente único (teu server é o teu local), as permissões são as mesmas, etc.
Veja, eu não sei qual a estrutura na qual você pretende implementar esse sistema, mas, em geral, utiliza-se servidores com restrições de segurança, controle de permissões, etc.
Eu optaria por gerar o pdf, mas é o que eu faria.

R

Entendi, Irei deixar só o PDF então, seguindo seu conselho.

darlan_machado

Eu me recordo que no antigo iReport 5.6.0 (e versões anteriores) havia a possibilidade de selecionar uma das 3 linguagens: java, groovy ou javascript.
Nunca optei pelas outras duas além de java.
Fui atrás e, de acordo com esta thread, diz que não é possível, caso contrário, seria uma opção utilizar o js para isso.

Criado 25 de janeiro de 2018
Ultima resposta 25 de jan. de 2018
Respostas 9
Participantes 2