diff --git a/java/src/main/java/com/genexus/internet/HttpClientJavaLib.java b/java/src/main/java/com/genexus/internet/HttpClientJavaLib.java index 875cbb51f..8011ae4d6 100644 --- a/java/src/main/java/com/genexus/internet/HttpClientJavaLib.java +++ b/java/src/main/java/com/genexus/internet/HttpClientJavaLib.java @@ -718,29 +718,22 @@ private void setEntityReader() throws IOException { if (reader == null) reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent())); } - - public String getString() { - if (response == null) - return ""; + + public String getString() { + if (response == null) + return ""; try { this.setEntity(); - ContentType contentType = ContentType.getOrDefault(entity); - Charset charset; - if (contentType.equals(ContentType.DEFAULT_TEXT)) { - charset = StandardCharsets.UTF_8; - } else { - charset = contentType.getCharset(); - if (charset == null) { - charset = StandardCharsets.UTF_8; - } - } + Charset charset = ContentType.getOrDefault(entity).getCharset(); String res = EntityUtils.toString(entity, charset); + if (res.matches(".*[Ã-ÿ].*")) { + res = EntityUtils.toString(entity, StandardCharsets.UTF_8); + } eof = true; return res; } catch (IOException e) { setExceptionsCatch(e); - } catch (IllegalArgumentException e) { - } + } catch (IllegalArgumentException e) {} return ""; }