diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/TcpNioConnection.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/TcpNioConnection.java index a42a03ea29..3d62f47f43 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/TcpNioConnection.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/TcpNioConnection.java @@ -295,8 +295,16 @@ public class TcpNioConnection extends TcpConnectionSupport { * @throws IOException */ private synchronized Message convert() throws Exception { - if (!dataAvailable()) { - return null; + if (this.channelInputStream.available() <= 0) { + if (!writingToPipe) { + return null; + } + else { + Thread.sleep(5); + if (this.channelInputStream.available() <= 0) { + return null; + } + } } Message message = null; try {