From aefa4e4de696824d4b35162ddd397fb7a6a6662c Mon Sep 17 00:00:00 2001 From: Leandro Quiroga Date: Sat, 31 Jul 2021 20:06:41 -0300 Subject: [PATCH] Properly close/flush TransportOutputStream. Resolves #1206,#1207. --- .../ws/transport/TransportInputStream.java | 4 +++- .../ws/transport/TransportOutputStream.java | 8 ++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/spring-ws-core/src/main/java/org/springframework/ws/transport/TransportInputStream.java b/spring-ws-core/src/main/java/org/springframework/ws/transport/TransportInputStream.java index 9f0c8b19..5a154903 100644 --- a/spring-ws-core/src/main/java/org/springframework/ws/transport/TransportInputStream.java +++ b/spring-ws-core/src/main/java/org/springframework/ws/transport/TransportInputStream.java @@ -47,7 +47,9 @@ public abstract class TransportInputStream extends InputStream { @Override public void close() throws IOException { - getInputStream().close(); + if (inputStream != null) { + getInputStream().close(); + } } @Override diff --git a/spring-ws-core/src/main/java/org/springframework/ws/transport/TransportOutputStream.java b/spring-ws-core/src/main/java/org/springframework/ws/transport/TransportOutputStream.java index 5c6dd7dd..5748c8e0 100644 --- a/spring-ws-core/src/main/java/org/springframework/ws/transport/TransportOutputStream.java +++ b/spring-ws-core/src/main/java/org/springframework/ws/transport/TransportOutputStream.java @@ -45,12 +45,16 @@ public abstract class TransportOutputStream extends OutputStream { @Override public void close() throws IOException { - getOutputStream().close(); + if (outputStream != null) { + getOutputStream().close(); + } } @Override public void flush() throws IOException { - getOutputStream().flush(); + if (outputStream != null) { + getOutputStream().flush(); + } } @Override