Erro: Caused by: java.io.IOException: Problem reading font data - Como resolver?

Problema

Quando estiver configurado a impressão e/ou geração de PDF dos Documentos Fiscais emitidos e não houver permissão, ou não existir a pasta de arquivos temporários usados pelo serviço Oobj DFe Client haverá o erro abaixo nos registros do serviço, que é salvo no caminho padrão: 

C:\Oobj\Aplicativos\Oobj\motor-periferico-std\logs\ wrapper-motor-periferico-std.log

0106 20:10:34,734 [Thread-38] DEBUG RGerarDanfce3_10 - Preenchendo bean do DANFE
Exception in thread "Thread-38" java.lang.ExceptionInInitializerError
    at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:96)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:73)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:61)
    at net.sf.jasperreports.engine.fill.JRFiller.createBandReportFiller(JRFiller.java:186)
    at net.sf.jasperreports.engine.fill.JRFiller.createReportFiller(JRFiller.java:201)
    at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:109)
    at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:667)
    at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:983)
    at br.com.oobj.relatorio.RRelatorioJasper.gerarJasperPrint(RRelatorioJasper.java:170)
    at br.com.oobj.relatorio.RRelatorioJasper.gerarJasperPrint(RRelatorioJasper.java:155)
    at br.com.oobj.RGerarDame.gerarJasperPrint(RGerarDame.java:368)
    at br.com.oobj.me.impressao.GeradorDanfce.gerarDAME(GeradorDanfce.java:76)
    at br.com.oobj.me.impressao.GeradorDameDelegator.gerarDAME(GeradorDameDelegator.java:28)
    at br.com.oobj.me.impressao.ServicoImpressao.gerarJasperPrintDocumentoPrincipal(ServicoImpressao.java:382)
    at br.com.oobj.me.impressao.ServicoImpressao.processar(ServicoImpressao.java:258)
    at br.com.oobj.me.impressao.ConsumidorImpressao.novaMensagem(ConsumidorImpressao.java:102)
    at br.com.oobj.util.fila.ConsumidorNotificante.processarComCommitSincrono(ConsumidorNotificante.java:333)
    at br.com.oobj.util.fila.ConsumidorNotificante.execute(ConsumidorNotificante.java:178)
    at br.com.oobj.util.fila.ConsumidorNotificante.run(ConsumidorNotificante.java:135)
    at br.com.oobj.me.impressao.ConsumidorImpressao.run(ConsumidorImpressao.java:75)
Caused by: net.sf.jasperreports.engine.JRRuntimeException: java.io.IOException: Problem reading font data.
    at net.sf.jasperreports.engine.fonts.SimpleFontFace.setTtf(SimpleFontFace.java:181)
    at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFace(SimpleFontExtensionHelper.java:351)
    at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamily(SimpleFontExtensionHelper.java:273)
    at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamilies(SimpleFontExtensionHelper.java:237)
    at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontFamilies(SimpleFontExtensionHelper.java:198)
    at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontFamilies(SimpleFontExtensionHelper.java:167)
    at net.sf.jasperreports.engine.fonts.FontExtensionsRegistry.getExtensions(FontExtensionsRegistry.java:58)
    at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:109)
    at net.sf.jasperreports.engine.util.JRStyledTextParser.<clinit>(JRStyledTextParser.java:82)
    ... 20 more
Caused by: java.io.IOException: Problem reading font data.
    at java.awt.Font.createFont0(Font.java:1000)
    at java.awt.Font.createFont(Font.java:877)
    at net.sf.jasperreports.engine.fonts.SimpleFontFace.setTtf(SimpleFontFace.java:173)
    ... 28 more

 

Solução/Procedimento

Para corrigir o erro, veja os passos a seguir:

1 -  Vá até a pasta abaixo e abra o arquivo wapper.conf com um editor de texto (recomendamos o Notepad++):

C:\Oobj\Aplicativos\Oobj\motor-periferico-std\conf

 

2 - Pesquise no arquivo que acabou de abrir pelo trecho abaixo:

# Java Additional Parameters

 

Para facilitar a pesquisa, use o comando "Ctrl + F" para abrir o Localizador de palavras, cole o trecho acima no campo de pesquisa e clique em Localizar próximo:

 

3 - Adicione o parâmetro em destaque na imagem abaixo:

 

Nas versões mais recentes, o parâmetro em questão, já vem adicionado por padrão.

Se o parâmetro já existir, vá ao próximo passo. Caso não exista o parâmetro, adicione-o.

wrapper.java.additional.6=-Djava.io.tmpdir=temp

 

Você deve ter atenção apenas a um detalhe. Cada parâmetro tem um número sequencial que deve ser respeitado. No nosso exemplo, o parâmetro que adicionamos está com o número "6" (seis), que é a sua posição. Basta você verificar qual o número do último parâmetro existente, e informar o próximo número para o parâmetro que vamos adicionar.

Após ter adicionado o parâmetro, salve o arquivo e feche o editor de texto.

 

4 - Vá até a pasta do serviço Oobj, no caminho abaixo:

C:\Oobj\Aplicativos\Oobj\motor-periferico-std

 

Nessa pasta, caso não exista, crie uma nova pasta com o nome:  temp

 

5 - Por último, basta reiniciar o serviço Oobj DFe Client. Para isso, siga os passos:

  1. Abra o Executar do Windows através do comando: "  + R " e digite services.msc




  2. Procure pelo serviço Oobj DFe Client e então clique em Reiniciar.




  3. Aguarde o reinicialização do serviço:

 

6 - Pronto! Aguarde mais alguns segundos após o serviço já ter reiniciado, que seu documento será impresso. Nos logs do serviço, o mesmo que viu o erro ocorrer, deve mostrar o documento sendo impresso. Veja um exemplo:

1307 11:11:55,056 [Thread-39] DEBUG ServicoImpressao - Gerando DAME da ME: 43160785813757000157655010304884171131447741 - inicio
1307 11:11:55,069 [Thread-39] DEBUG RGerarDanfce3_10 - Preenchendo bean do DANFE
1307 11:13:19,938 [Thread-39] DEBUG ServicoImpressao - Gerando DAME da ME: 43160785813757000157655010304884171131447741 - fim
1307 11:13:19,939 [Thread-39] DEBUG ServicoImpressao - Salvando DAME - inicio: C:\Oobj\Integracao\PDF\43160785813757000157655010304884171131447741.pdf
1307 11:13:20,540 [Thread-39] DEBUG ServicoImpressao - Salvando DAME - fim
1307 11:13:20,540 [Thread-39] DEBUG ServicoImpressao - Gerando documentos adicionais - inicio
1307 11:13:20,540 [Thread-39] DEBUG CustomizadoDelegator - Nenhum gerador de documento especifico para o tipo, usarei GeradorBoleto: tpcustom-nfe-sefaz
1307 11:13:20,547 [Thread-39] INFO  GeradorBoleto - XML nao possui conteudo. Nao gerarei boleto
1307 11:13:20,547 [Thread-39] DEBUG ServicoImpressao - Gerando documentos adicionais - fim
1307 11:13:20,547 [Thread-39] INFO  ServicoImpressao - 0 documentos adicionais gerados
1307 11:13:20,548 [Thread-39] DEBUG ServicoImpressao - Imprimindo - inicio: IMPRESSAO OOBJ - EMITENTE: 85.813.757/0001-57 - NUMERO: 30488417 - SERIE: 501 - TIPO DOCUMENTO: Principal
1307 11:13:20,548 [Thread-39] WARN  Impressora - MediaTray invalida, utilizando a padrao: PADRÃO
1307 11:13:20,549 [Thread-39] DEBUG Impressora - EPSON TM-T20 Receipt - impressao em retrato m: IMPRESSAO OOBJ - EMITENTE: 85.813.757/0001-57 - NUMERO: 30488417 - SERIE: 501 - TIPO DOCUMENTO: Principal
1307 11:13:20,549 [Thread-39] INFO  Impressora - Imprimindo usando implementacao do JasperReports...
1307 11:14:43,504 [Thread-39] DEBUG Impressora - EPSON TM-T20 Receipt - impressao concluida ou enviada para o spool
1307 11:14:43,505 [Thread-39] DEBUG ServicoImpressao - Tempo de envio para impressora (em milissegundos): 82957
1307 11:14:43,505 [Thread-39] DEBUG ServicoImpressao - Imprimindo - fim: IMPRESSAO OOBJ - EMITENTE: 85.813.757/0001-57 - NUMERO: 30488417 - SERIE: 501 - TIPO DOCUMENTO: Principal

 

Referência

0 (0)
Avaliação do Artigo (Nenhum voto)
Avaliar esse artigo
Anexos
Não há anexos para este artigo.
Artigos Relacionados RSS Feed
Como configurar DFe Client para emitir SAT?
Visualizado 1054 vezes desde 17/01/2017
Erro net.sf.jasperreports.engine.JRException: Image read failed - Como resolver?
Visualizado 1920 vezes desde 23/01/2017
Como configurar logomarca no DFe Client?
Visualizado 1004 vezes desde 18/07/2016
Como realizar a atualização manual do DFe Client?
Visualizado 1943 vezes desde 19/07/2016
Como configurar Certificado Digital A1 ou A3 no DFe Client?
Visualizado 2068 vezes desde 19/07/2016
Como adicionar Token (CSC) para NFC-e no DFe Client?
Visualizado 4984 vezes desde 20/07/2016
Como configurar a Impressão automática no DFe Client?
Visualizado 1735 vezes desde 03/08/2016
Como ativar Contingência no DFe Client?
Visualizado 5128 vezes desde 02/08/2016
Como ativar a gravação do XML Proc de Documentos emitidos (NF-e, NFC-e, CT-e e CF-e) no DFe Client?
Visualizado 1682 vezes desde 18/08/2016
Falha de impressao no endereco USB (Impressora Epson TM-T20) - Como resolver?
Visualizado 12222 vezes desde 15/09/2016
Comentários
Nome
Email
Código de Segurança Security Code
Não há comentários para este artigo. Seja o primeiro a postar um comentário.