Erro caracteres especiais web service
03/02/2016
0
Estou com um problema de acentuação ao consumir WebService no Windows
Server.
Tenho apache-tomcat-7.0.63 instalado no windows server 2008, e como SGB,
o PostGres 9.4 e com o Java 8.
Quando consumo o web service pelo netbeans funciona normalmente, porém,
quando consumo diretamente pelo jar, fora do netbeans, gera os caracteres especiais.
[img:descricao=Erro]http://arquivo.devmedia.com.br/forum/imagem/303315-20160203-140947.jpg[/img]
Código do webservice
Código do cliente consumindo o web service
Server.
Tenho apache-tomcat-7.0.63 instalado no windows server 2008, e como SGB,
o PostGres 9.4 e com o Java 8.
Quando consumo o web service pelo netbeans funciona normalmente, porém,
quando consumo diretamente pelo jar, fora do netbeans, gera os caracteres especiais.
[img:descricao=Erro]http://arquivo.devmedia.com.br/forum/imagem/303315-20160203-140947.jpg[/img]
Código do webservice
@POST @Path("cliente/sincronizar") @Consumes("application/json;charset=utf-8") public Response createClienteInJSON(String param) { Gson gson = new Gson(); ContaCTR contaCTR = new ContaCTR(); ParamCliente paramCliente = gson.fromJson(param, ParamCliente.class); Conta conta = contaCTR.carregar(paramCliente.getToken()); if (!paramCliente.getClientes().isEmpty() && conta != null) { try { WsAuxiliar.sincronizarCliente(paramCliente.getClientes(), conta); ClienteCTR clienteCTR = new ClienteCTR(); List<Cliente> clientes = clienteCTR.listar(conta.getContaid(), "codigointerno"); WsAuxiliar.sincronizarEmail(paramCliente.getEmails(), conta, clientes); WsAuxiliar.sincronizarEndereco(paramCliente.getEnderecos(), conta, clientes); WsAuxiliar.sincronizarTelefone(paramCliente.getTelefones(), conta, clientes); } catch (Exception e) { throw new RuntimeException("Falha ao sincronizar Cliente. Erro: " + e.getMessage()); } } return Response.status(201).build(); }
Código do cliente consumindo o web service
public Retorno sendPostClientes(String token) throws Exception { try { ParamCliente paramCliente = new ParamCliente(); paramCliente.carregar(); paramCliente.setToken(token ); Gson gson = new Gson(); String input = gson.toJson(paramCliente); URL url = new URL(Configuracao.carregar().getWebserv() + "cliente/sincronizar"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setDoOutput(true); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/json;charset=utf-8"); OutputStream os = conn.getOutputStream(); os.write(input.getBytes()); os.flush(); if (conn.getResponseCode() != HttpURLConnection.HTTP_CREATED) { throw new RuntimeException("Failed : HTTP error code : " + conn.getResponseCode()); } BufferedReader br = new BufferedReader(new InputStreamReader( (conn.getInputStream()))); String output; System.out.println("Output from Server .... \n"); while ((output = br.readLine()) != null) { System.out.println(output); } conn.disconnect(); } catch (Exception e) { return Retorno.criarRetorno(Boolean.TRUE, "Erro ao sincronizar clientes!\n" + e.getMessage()); } return Retorno.criarRetorno(Boolean.FALSE, "Clientes Sincronizado com sucesso!"); }
Fácil Ltda
Curtir tópico
+ 0
Responder
Posts
Clique aqui para fazer login e interagir na Comunidade :)