Index: gms/impl/src/test/java/com/sun/enterprise/mgmt/transport/grizzly/grizzly2/GrizzlyParserTest.java =================================================================== --- gms/impl/src/test/java/com/sun/enterprise/mgmt/transport/grizzly/grizzly2/GrizzlyParserTest.java (revision 1741) +++ gms/impl/src/test/java/com/sun/enterprise/mgmt/transport/grizzly/grizzly2/GrizzlyParserTest.java (working copy) @@ -62,7 +62,6 @@ import org.glassfish.grizzly.nio.transport.TCPNIOTransport; import org.glassfish.grizzly.nio.transport.TCPNIOTransportBuilder; import org.glassfish.grizzly.utils.ChunkingFilter; -import org.glassfish.grizzly.utils.DelayFilter; /** * Set of Grizzly 2.0 tests @@ -145,10 +144,7 @@ throw e; } finally { if (connection != null) { - try { - connection.close(); - } catch (IOException ignored) { - } + connection.close(); } try { clientTransport.stop(); Index: gms/impl/src/main/java/com/sun/enterprise/mgmt/transport/grizzly/grizzly2/GrizzlyNetworkManager2.java =================================================================== --- gms/impl/src/main/java/com/sun/enterprise/mgmt/transport/grizzly/grizzly2/GrizzlyNetworkManager2.java (revision 1741) +++ gms/impl/src/main/java/com/sun/enterprise/mgmt/transport/grizzly/grizzly2/GrizzlyNetworkManager2.java (working copy) @@ -399,10 +399,7 @@ connection.addCloseListener(closeListener); if (isClosed.get()) { - try { - connection.close(); - } catch (IOException ignored) { - } + connection.close(); } } @@ -413,11 +410,7 @@ for (Iterator it = connections.keySet().iterator(); it.hasNext(); ) { final Connection connection = it.next(); it.remove(); - - try { - connection.close(); - } catch (IOException ignored) { - } + connection.close(); } } @@ -426,10 +419,9 @@ private class CloseListener implements Connection.CloseListener { @Override - public void onClosed(final Connection connection) throws IOException { + public void onClosed(Connection connection, Connection.CloseType type) throws IOException { connections.remove(connection); } - } } } Index: gms/impl/src/main/java/com/sun/enterprise/mgmt/transport/grizzly/grizzly2/ConnectionCache.java =================================================================== --- gms/impl/src/main/java/com/sun/enterprise/mgmt/transport/grizzly/grizzly2/ConnectionCache.java (revision 1741) +++ gms/impl/src/main/java/com/sun/enterprise/mgmt/transport/grizzly/grizzly2/ConnectionCache.java (working copy) @@ -158,11 +158,8 @@ if (cacheRecord == null) return; Connection connection; while ((connection = cacheRecord.connections.poll()) != null) { - try { - cacheRecord.idleConnectionsCount.decrementAndGet(); - connection.close(); - } catch (IOException ignored) { - } + cacheRecord.idleConnectionsCount.decrementAndGet(); + connection.close(); } } @@ -193,7 +190,7 @@ Connection.CloseListener { @Override - public void onClosed(final Connection connection) throws IOException { + public void onClosed(Connection connection, Connection.CloseType type) throws IOException { final SocketAddress remoteAddress = (SocketAddress) connection.getPeerAddress(); final CacheRecord cacheRecord = cache.get(remoteAddress); @@ -202,5 +199,6 @@ cacheRecord.idleConnectionsCount.decrementAndGet(); } } + } } Index: gms/impl/src/main/java/com/sun/enterprise/mgmt/transport/grizzly/grizzly2/GrizzlyTCPMessageSender.java =================================================================== --- gms/impl/src/main/java/com/sun/enterprise/mgmt/transport/grizzly/grizzly2/GrizzlyTCPMessageSender.java (revision 1741) +++ gms/impl/src/main/java/com/sun/enterprise/mgmt/transport/grizzly/grizzly2/GrizzlyTCPMessageSender.java (working copy) @@ -54,9 +54,14 @@ import java.util.concurrent.TimeUnit; import java.util.logging.Logger; import java.util.logging.Level; + +import org.glassfish.grizzly.CompletionHandler; import org.glassfish.grizzly.Connection; import org.glassfish.grizzly.WriteResult; +import org.glassfish.grizzly.impl.FutureImpl; +import org.glassfish.grizzly.impl.SafeFutureImpl; import org.glassfish.grizzly.nio.transport.TCPNIOTransport; +import org.glassfish.grizzly.utils.Futures; /** * @author Bongjae Chang @@ -137,17 +142,13 @@ } try { - final Future syncWriteFuture = - connection.write(remoteAddress, message, null); + final FutureImpl syncWriteFuture = + Futures.createSafeFuture(); + connection.write(remoteAddress, message, Futures.toCompletionHandler(syncWriteFuture), null); syncWriteFuture.get(writeTimeoutMillis, TimeUnit.MILLISECONDS); connectionCache.offer(connection); return true; - } catch (MessageIOException mioe) { - // thrown when message size is too big. - connection.close(); - - throw mioe; } catch (Exception e) { // following exception is getting thrown java.util.concurrent.ExecutionException with MessageIOException Index: pom.xml =================================================================== --- pom.xml (revision 1741) +++ pom.xml (working copy) @@ -117,7 +117,7 @@ 1.9.36 org.glassfish.grizzly - 2.1 + 2.2.1 junit 3.8.1