Skip to content

Commit 783de41

Browse files
authored
Merge pull request #3747 from backstraw/master
fix: close DataOutputStream in finally block for resource safety in postBody
2 parents 90fae1b + cce8fc7 commit 783de41

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

xxl-job-core/src/main/java/com/xxl/job/core/util/XxlJobRemotingUtil.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ public void checkServerTrusted(X509Certificate[] chain, String authType) throws
6868
public static ReturnT postBody(String url, String accessToken, int timeout, Object requestObj, Class returnTargClassOfT) {
6969
HttpURLConnection connection = null;
7070
BufferedReader bufferedReader = null;
71+
DataOutputStream dataOutputStream = null;
7172
try {
7273
// connection
7374
URL realUrl = new URL(url);
@@ -102,7 +103,7 @@ public static ReturnT postBody(String url, String accessToken, int timeout, Obje
102103
if (requestObj != null) {
103104
String requestBody = GsonTool.toJson(requestObj);
104105

105-
DataOutputStream dataOutputStream = new DataOutputStream(connection.getOutputStream());
106+
dataOutputStream = new DataOutputStream(connection.getOutputStream());
106107
dataOutputStream.write(requestBody.getBytes("UTF-8"));
107108
dataOutputStream.flush();
108109
dataOutputStream.close();
@@ -144,6 +145,9 @@ public static ReturnT postBody(String url, String accessToken, int timeout, Obje
144145
return new ReturnT<String>(ReturnT.FAIL_CODE, "xxl-job remoting error("+ e.getMessage() +"), for url : " + url);
145146
} finally {
146147
try {
148+
if (dataOutputStream != null) {
149+
dataOutputStream.close();
150+
}
147151
if (bufferedReader != null) {
148152
bufferedReader.close();
149153
}

0 commit comments

Comments
 (0)