25307 - Chamada via HttpPost formato UTF-8
Problema:
Solução:
Fazendo uso de uma chamada de um webservices json via httppost e estou tendo como retorno:
Classe da exceção: EIdHTTPProtocolException.
Detalhes técnicos:
{timestamp:1598450077025,status:400,error:Bad Request,exception:org.springframework.http.converter.HttpMessageNotReadableException,
message:JSON parse error: Invalid UTF-8 middle byte 0x6f\n at [Source: java.io.PushbackInputStream@5a287119; line: 1, column: 174];
nested exception is com.fasterxml.jackson.databind.JsonMappingException: Invalid UTF-8 middle byte 0x6f\n at [Source: java.io.PushbackInputStream@5a287119;
line: 1, column: 174]\n at [Source: java.io.PushbackInputStream@5a287119; line: 1, column: 169]
(through reference chain: br.com.agrotopuswms.app.integration.ax.model.batchOperation.BatchOperationOutAX[\driverName\]),
path:/agrotopuswmsseeds/api/public/integration/batch-operation-out/SENIOR}
Analisando o texto do retorno parece que deve ser mudado o formato para UTF-8 via regra LSP. Mas como faria essa conversão?
Já foi incluído o parâmetro HttpAlteraCodifCaracPadrao(vHTTPCargaOrdem,UTF-8); porem a mensagem de retorno continua idêntica.
O que fazer para solucionar essa questão?
Rotina / Tela: Regra com HttpPost
Solução:
Solução:
Foi verificado que para converter a codificação dos dados postados é necessário utilizar a função ConverteCodificaçãoString (https://documentacao.senior.com.br/tecnologia/6.2.34/index.htm#lsp/funcoes/gerais/convertecodificacaostring.htm)
Nós fizemos um teste e os caracteres especiais passaram a ser enviados corretamente.
Veja print abaixo:
![]() |