Erro caracteres especiais web service
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
Curtidas 0
Respostas
Fácil Ltda
03/02/2016
? ? ? ? ? ?
GOSTEI 0