ERP - LSP - O Web Services g5.com.ger.relatorio não gera o Blob ao ser executado via regra LSP
Incidente
No módulo de Recursos, é executado o Web Services g5.com.ger.relatorio de modo a receber como retorno um Blob em formato PDF. Quando o conteúdo deste retorno é salvo em arquivo PDF, o arquivo não abre, indicando que está corrompido. Quando o resultado é solicitado como um arquivo e não como um Blob, o processo funciona corretamente.
Causa
Há dois comportamentos distintos para o processamento destes Web Services.
Quando executado o Web Services via regra LSP, o retorno será uma String contendo o binário do arquivo PDF. Com isto, basta utilizar a função Gravar para gravar o binário em um arquivo, salvando-o como PDF.
Quando o Web Services é executado via Middleware, com o Glassfish ou WildFly, 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.
Solução
Para que a mensagem não seja apresentada, realize os passos a seguir:
1. Ao executar o Web services g5.com.ger.relatorio, verifique se o retorno está sendo recebido como um Blob em formato PDF;
2. Caso o retorno esteja corrompido, solicite que o resultado seja retornado como um arquivo, e não como um Blob;
3. Utilize a função Gravar para salvar o binário do arquivo PDF em um arquivo local.
Observação
Verifique o modoexecucao do WS via LSP, garantindo que caso esteja em modoexecucao = 2, o binário gerado seja convertivo via aplicativo base64.