Closed MathOliveira closed 6 years ago
Desculpa a demora no Retorno @MathOliveira , no FDS eu vou priorizar isso
@angeliski @MathOliveira @EliasMezalira Há uma regressão aqui. Uma página vazia é gerada antes do boleto.
Nossa @gilbertoca Você pode abrir uma issue com as evidências? Assim a gente acompanha por lá junto da correção.
Rogério (@angeliski ), a única evidência no momento são os boletos dos clientes da aplicação que desenvolvi(gerando duas páginas) - construi a aplicação com a nova versão do stella-boleto. Infelizmente o teste de integração deleta o pdf do boleto no final do teste. Talvez um test unitário verificando se há mais de uma páguina? No momento estou atarefado, mas assim que puder verifico isso.
@angeliski acrescentei esse teste no meu fork:
@Test
public void testPDFWriterGerouUmaPagina() throws IOException {
PDDocument document = PDDocument.load(new File("arquivo.pdf"));
int numberOfPages = document.getNumberOfPages();
document.close();
assertTrue(numberOfPages == 1);
}
E a regressão é no sistema que mantenho. Nesse sistema, uso o Jasperreports 6.8.1 com o stella-boleto-2.1.3 sem esse problema da pagina em branco. Agora é investigar mais a fundo.
@MathOliveira @angeliski , gostaria rever esse PR, pois o mesmo causou regressão da versão 2.1.3 para 2.1.4, a qual esse PR foi feito merge. No comentário anterior, o qual mencionei que adicionei um teste do meu fork do projeto e não constantando problema, foi usado os valores default. Quando acrescento mais instruções no corpo do boleto o erro é evidenciado - estou nesse problema a 3 dias. O sistema está na versão 2.1.3, mas é impactado bug do ano 2024 #233, quando atualizo para 2.1.4, consigo gerar boletos mas caio aqui nessa regressão. Portanto considere:
* Correção de erros ortográficos;
Tudo bem aqui.
- Tamanho do código de barras foi ampliado; Tudo bem aqui.
- Adicionado digito do nosso número nos respectivos campos; A documentação da FEBRABAN não menciona digito verificador para NOSSO_NUMERO no leiaute do boleto de cobrança, esse número é personalizado para cada banco, portanto, não cabe essa mudança. Quando testo com a versão 2.1.4, os boletos do sistema saem como
NOSSO_NUMERO - null
. numero-contrato.pdf- Atualizado layout do boleto, removendo espaços desnecessários; Essa parte deu mais trabalho para descobrir. Fiz um diff das versões e o arquivo jrxml foi acrescido em todo ele pela tag
positionType="FixRelativeToBottom"
, causando (creio eu) a geração de duas páginas para o boleto, a primeira em branco.
* Adicionado hífen separando o CEP da endereço do pagador;
Tudo bem aqui.
No momento reverti esse leiaute no meu fork para permitir gerar boletos após 2025. numero-contrato-patched.pdf
Não entendo como isso não impactou outros que usam a API. Mas entendo se não considerarem isso como regressão.
Salve @gilbertoca Primeiro agradecer por essa investigação primorosa, belíssimo trabalho. Acredito que temos dois problemas aqui então:
O primeiro caso me parece que podemos tratar o layout para não exibir a informação quando o digito não for informado.
No segundo caso, acho que uma solução precisa ser mais investigada, faz sentido? Podemos abrir duas issues para lidar com isso e gerar uma nova versão com todas essas correções.
Concordo @angeliski . Foi o que fiz aqui https://github.com/caelum/caelum-stella/compare/master...gilbertoca:regressao-boleto--2.1.4 , revertendo esses dois pontos somente no leiaute do boleto. O @MathOliveira poderia acompanhar o patch e verificar se impacta algum sistema que ele mantém.
228
Esse pull request feita por mim e pelo @EliasMezalira complementa o pull #229