diff --git a/common/src/main/java/com/genexus/properties/GXObjectProperties.java b/common/src/main/java/com/genexus/properties/GXObjectProperties.java index 24506e9a4..fefd17844 100644 --- a/common/src/main/java/com/genexus/properties/GXObjectProperties.java +++ b/common/src/main/java/com/genexus/properties/GXObjectProperties.java @@ -8,8 +8,10 @@ public class GXObjectProperties private String errorMessage = ""; private int errorCode = 0; private int statusCode = 0; + private String statusMessage = ""; private int protocol = 1; + public Location getLocation() { return location; @@ -45,7 +47,14 @@ public void setErrorMessage(String value) { errorMessage = value; } - + public String getStatusMessage() + { + return statusMessage; + } + public void setStatusMessage(String value) + { + statusMessage = value; + } public int getProtocol() { return protocol; diff --git a/java/src/main/java/com/genexus/internet/GXRestAPIClient.java b/java/src/main/java/com/genexus/internet/GXRestAPIClient.java index de4e50f25..d554c5f5b 100644 --- a/java/src/main/java/com/genexus/internet/GXRestAPIClient.java +++ b/java/src/main/java/com/genexus/internet/GXRestAPIClient.java @@ -26,7 +26,6 @@ public class GXRestAPIClient { private Location location; private int protocol = 1; private String httpMethod = "GET"; - private int statusCode; private int errorCode; private String errorMessage; private Integer responseCode; @@ -86,13 +85,17 @@ public int getErrorCode() { } public int getStatusCode() { - return statusCode; + return responseCode; } public String getErrorMessage() { return errorMessage; } + public String getStatusMessage() { + return responseMessage; + } + /* Sets */ public void setName( String value) { @@ -112,9 +115,13 @@ public void setHttpMethod( String value) { } public void setStatusCode( int value) { - statusCode = value; + responseCode = value; } - + + public void setStatusMessage(String value) { + responseMessage = value; + } + public void setErrorCode( int value) { errorCode = value; } @@ -512,15 +519,16 @@ public void RestExecute() { serviceuri += (location.getPort() != 80) ? ":" + Integer.toString(location.getPort()): ""; serviceuri += "/" + location.getBaseURL() + "/" + location.getResourceName(); serviceuri += queryString; - httpClient.execute( httpMethod, serviceuri); - - if (httpClient.getStatusCode() >= 300 || httpClient.getErrCode() > 0) { - errorCode = (httpClient.getErrCode() == 0)? 1 : httpClient.getErrCode(); - errorMessage = httpClient.getErrDescription(); - statusCode = httpClient.getStatusCode(); - } + httpClient.execute( this.httpMethod, serviceuri); + responseCode = httpClient.getStatusCode(); + responseMessage = httpClient.getReasonLine(); + errorCode = 0; + errorMessage = ""; + if (responseCode >= 300 || httpClient.getErrCode() > 0) { + errorCode = httpClient.getErrCode(); + errorMessage = httpClient.getErrDescription(); + } else { - statusCode = httpClient.getStatusCode(); try { String response = httpClient.getString(); if (response.trim().startsWith("["))