diff --git a/pom.xml b/pom.xml
index 1455e8a..b1fbadd 100644
--- a/pom.xml
+++ b/pom.xml
@@ -24,6 +24,7 @@
UTF-8
2.375.2
+ 4.5.14-150.v7a_b_9d17134a_5
@@ -88,5 +89,10 @@
4.13.2
test
+
+ org.jenkins-ci.plugins
+ apache-httpcomponents-client-4-api
+ ${apache-httpcomponents-client-4-api.version}
+
diff --git a/src/main/java/com/orctom/jenkins/plugin/globalpostscript/GlobalPostScript.java b/src/main/java/com/orctom/jenkins/plugin/globalpostscript/GlobalPostScript.java
index 30b8baf..39572e5 100644
--- a/src/main/java/com/orctom/jenkins/plugin/globalpostscript/GlobalPostScript.java
+++ b/src/main/java/com/orctom/jenkins/plugin/globalpostscript/GlobalPostScript.java
@@ -12,9 +12,12 @@
import jenkins.model.Jenkins;
import net.sf.json.JSONObject;
import org.apache.commons.codec.net.URLCodec;
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.methods.GetMethod;
+
+import org.apache.http.client.methods.CloseableHttpResponse;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClients;
+
import org.apache.commons.lang.StringUtils;
import org.kohsuke.stapler.QueryParameter;
import org.kohsuke.stapler.StaplerRequest;
@@ -173,11 +176,11 @@ public void triggerRemoteJob(String jobTriggerUrl) {
println("[WARNING] ignoring URL exception for " + jobTriggerUrl);
}
- HttpClient client = new HttpClient();
- HttpMethod method = new GetMethod(url);
+ CloseableHttpClient client = HttpClients.createDefault();
+ HttpGet method = new HttpGet(url);
try {
- client.executeMethod(method);
- int statusCode = method.getStatusCode();
+ CloseableHttpResponse response = client.execute(method);
+ int statusCode = response.getStatusLine().getStatusCode();
if (statusCode < 400) {
println("Triggering " + jobUrl);
} else {
@@ -187,7 +190,11 @@ public void triggerRemoteJob(String jobTriggerUrl) {
e.printStackTrace();
println("[ERROR] Failed to trigger: " + jobUrl + " | " + e.getMessage());
} finally {
- method.releaseConnection();
+ try {
+ client.close();
+ } catch (IOException e) {
+ println("[ERROR] Failed to close connection: " + jobUrl + " | " + e.getMessage());
+ }
}
}