13748 - Retorno webservice ger.relatorio.Executar
Problema: Executamos o ws g5.com.ger.relatorio de modo a receber como retorno um Blob em formato PDF.
Quando salvamos o conteúdo deste retorno em arquivo PDF e vamos conferir esse arquivo, vemos que ele não abre indicando que está corrompido.
Quando solicitamos que o resultado seja um arquivo e não um Blob ele funciona corretamente.
Favor verificar o conteúdo deste retorno. Necessitamos do retorno tanto em arquivo como em Blob, porém somente um deles (como arquivo) está funcionando 100%.
Em resumo:
Ao executar o webservices interno.com.senior.g5.co.ger.relatorio a variávell prRetorno que possui o tipo de retorno BLOB não está preenchendo com o dados binário. Ou seja, se eu chamar o ws um determinado relatório do ERP, a variável não está preenchendo o binário do relatório.
Rotina / Tela: Regras
Solução: Solução 13748: Efetuamos testes de execução do WebService de relatórios em modo Local via regra LSP e Síncrono via Glassfish. Nestes testes, verificamos que há dois comportamentos distintos para o processamento destes WebService.
1 - Quando executado o WebService via regra LSP, o retorno será uma String contendo o binário do arquivo PDF. Com isto, bastar utilizar a função Gravar para gravar o binário em um arquivo, salvando-o como PDF.
2 - Quando o WebService for executado via Middleware, utilizando o Glassfish, o retorno da execução será uma String codificada em Base64.
Deve-se então obter o retorno e decodificar utilizando o aplicativo base64, no qual transformará a string em um arquivo PDF.
O problema descrito no chamado ocorria pois, via Glassfish o retorno não é um binário como via regra LSP, necessitando a decodificação da string para geração do PDF.
Em anexo estamos encaminhando imagens dos testes efetuados.
Quando salvamos o conteúdo deste retorno em arquivo PDF e vamos conferir esse arquivo, vemos que ele não abre indicando que está corrompido.
Quando solicitamos que o resultado seja um arquivo e não um Blob ele funciona corretamente.
Favor verificar o conteúdo deste retorno. Necessitamos do retorno tanto em arquivo como em Blob, porém somente um deles (como arquivo) está funcionando 100%.
Em resumo:
Ao executar o webservices interno.com.senior.g5.co.ger.relatorio a variávell prRetorno que possui o tipo de retorno BLOB não está preenchendo com o dados binário. Ou seja, se eu chamar o ws um determinado relatório do ERP, a variável não está preenchendo o binário do relatório.
Rotina / Tela: Regras
Solução: Solução 13748: Efetuamos testes de execução do WebService de relatórios em modo Local via regra LSP e Síncrono via Glassfish. Nestes testes, verificamos que há dois comportamentos distintos para o processamento destes WebService.
1 - Quando executado o WebService via regra LSP, o retorno será uma String contendo o binário do arquivo PDF. Com isto, bastar utilizar a função Gravar para gravar o binário em um arquivo, salvando-o como PDF.
2 - Quando o WebService for executado via Middleware, utilizando o Glassfish, o retorno da execução será uma String codificada em Base64.
Deve-se então obter o retorno e decodificar utilizando o aplicativo base64, no qual transformará a string em um arquivo PDF.
O problema descrito no chamado ocorria pois, via Glassfish o retorno não é um binário como via regra LSP, necessitando a decodificação da string para geração do PDF.
Em anexo estamos encaminhando imagens dos testes efetuados.