atmosphere-vertx icon indicating copy to clipboard operation
atmosphere-vertx copied to clipboard

with SSL client disconnects throws excptions in a loop

Open Frintrop opened this issue 10 years ago • 3 comments

With atmosphere 2.1 RC2, vertx 2.1M2, netty 4.013 we get a exception throwing loop if a SSL websocket client disconnects from atmosphere-vertx....

Non SSL clients works perfect. Downgrade to netty 3.8, vertx 2.1M2 won´t work. Long polling works with SSL perfect.

With Websocket and SSL we get:

21:47:35.188 [vert.x-eventloop-thread-1] DEBUG o.atmosphere.cpr.DefaultBroadcaster - Broadcast Interrupted null 21:47:35.189 [vert.x-eventloop-thread-1] DEBUG o.atmosphere.cpr.DefaultBroadcaster - Broadcast Interrupted null java.io.IOException: Eine vorhandene Verbindung wurde vom Remotehost geschlossen at sun.nio.ch.SocketDispatcher.write0(Native Method) at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:51) at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:94) at sun.nio.ch.IOUtil.write(IOUtil.java:51) at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:466) at io.netty.buffer.PooledUnsafeDirectByteBuf.getBytes(PooledUnsafeDirectByteBuf.java:208) at io.netty.buffer.PooledUnsafeDirectByteBuf.readBytes(PooledUnsafeDirectByteBuf.java:215) at io.netty.channel.socket.nio.NioSocketChannel.doWriteBytes(NioSocketChannel.java:214) at io.netty.channel.nio.AbstractNioByteChannel.doWrite(AbstractNioByteChannel.java:177) at io.netty.channel.socket.nio.NioSocketChannel.doWrite(NioSocketChannel.java:231) at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:682) at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:271) at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:651) at io.netty.channel.DefaultChannelPipeline$HeadHandler.flush(DefaultChannelPipeline.java:1038) at io.netty.channel.DefaultChannelHandlerContext.invokeFlush(DefaultChannelHandlerContext.java:675) at io.netty.channel.DefaultChannelHandlerContext.flush(DefaultChannelHandlerContext.java:656) at io.netty.channel.ChannelOutboundHandlerAdapter.flush(ChannelOutboundHandlerAdapter.java:115) at io.netty.channel.DefaultChannelHandlerContext.invokeFlush(DefaultChannelHandlerContext.java:675) at io.netty.channel.DefaultChannelHandlerContext.flush(DefaultChannelHandlerContext.java:656) at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:430) at io.netty.handler.ssl.SslHandler.closeOutboundAndChannel(SslHandler.java:1022) at io.netty.handler.ssl.SslHandler.close(SslHandler.java:397) at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561) at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546) at io.netty.channel.ChannelOutboundHandlerAdapter.close(ChannelOutboundHandlerAdapter.java:71) at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561) at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546) at io.netty.channel.ChannelDuplexHandler.close(ChannelDuplexHandler.java:73) at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561) at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546) at io.netty.channel.ChannelDuplexHandler.close(ChannelDuplexHandler.java:73) at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561) at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546) at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:424) at io.netty.channel.DefaultChannelPipeline.close(DefaultChannelPipeline.java:826) at io.netty.channel.AbstractChannel.close(AbstractChannel.java:178) at org.vertx.java.core.net.impl.VertxHandler$2.run(VertxHandler.java:99) at org.vertx.java.core.impl.DefaultContext$3.run(DefaultContext.java:176) at org.vertx.java.core.impl.DefaultContext.execute(DefaultContext.java:135) at org.vertx.java.core.net.impl.VertxHandler.exceptionCaught(VertxHandler.java:95) at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) at io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:131) at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) at io.netty.channel.ChannelHandlerAdapter.exceptionCaught(ChannelHandlerAdapter.java:61) at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) at io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:131) at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) at io.netty.handler.ssl.SslHandler.exceptionCaught(SslHandler.java:615) at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) at io.netty.channel.ChannelHandlerAdapter.exceptionCaught(ChannelHandlerAdapter.java:61) at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) at io.netty.channel.DefaultChannelPipeline.fireExceptionCaught(DefaultChannelPipeline.java:773) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.handleReadException(AbstractNioByteChannel.java:89) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:134) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:485) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:452) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:346) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101) at java.lang.Thread.run(Thread.java:724) 21:47:38.910 [vert.x-eventloop-thread-1] DEBUG o.a.vertx.AtmosphereCoordinator - java.io.IOException: Eine vorhandene Verbindung wurde vom Remotehost geschlossen at sun.nio.ch.SocketDispatcher.write0(Native Method) ~[na:1.7.0_25] at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:51) ~[na:1.7.0_25] at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:94) ~[na:1.7.0_25] at sun.nio.ch.IOUtil.write(IOUtil.java:51) ~[na:1.7.0_25] at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:466) ~[na:1.7.0_25] at io.netty.buffer.PooledUnsafeDirectByteBuf.getBytes(PooledUnsafeDirectByteBuf.java:208) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.buffer.PooledUnsafeDirectByteBuf.readBytes(PooledUnsafeDirectByteBuf.java:215) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.socket.nio.NioSocketChannel.doWriteBytes(NioSocketChannel.java:214) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.nio.AbstractNioByteChannel.doWrite(AbstractNioByteChannel.java:177) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.socket.nio.NioSocketChannel.doWrite(NioSocketChannel.java:231) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:682) [netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:271) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:651) [netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelPipeline$HeadHandler.flush(DefaultChannelPipeline.java:1038) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.invokeFlush(DefaultChannelHandlerContext.java:675) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.flush(DefaultChannelHandlerContext.java:656) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.ChannelOutboundHandlerAdapter.flush(ChannelOutboundHandlerAdapter.java:115) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.invokeFlush(DefaultChannelHandlerContext.java:675) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.flush(DefaultChannelHandlerContext.java:656) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:430) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.handler.ssl.SslHandler.closeOutboundAndChannel(SslHandler.java:1022) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.handler.ssl.SslHandler.close(SslHandler.java:397) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.ChannelOutboundHandlerAdapter.close(ChannelOutboundHandlerAdapter.java:71) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.ChannelDuplexHandler.close(ChannelDuplexHandler.java:73) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.ChannelDuplexHandler.close(ChannelDuplexHandler.java:73) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:424) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelPipeline.close(DefaultChannelPipeline.java:826) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.AbstractChannel.close(AbstractChannel.java:178) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at org.vertx.java.core.net.impl.VertxHandler$2.run(VertxHandler.java:99) ~[vertx-core-2.1M2.jar:na] at org.vertx.java.core.impl.DefaultContext$3.run(DefaultContext.java:176) ~[vertx-core-2.1M2.jar:na] at org.vertx.java.core.impl.DefaultContext.execute(DefaultContext.java:135) ~[vertx-core-2.1M2.jar:na] at org.vertx.java.core.net.impl.VertxHandler.exceptionCaught(VertxHandler.java:95) ~[vertx-core-2.1M2.jar:na] at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:131) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.ChannelHandlerAdapter.exceptionCaught(ChannelHandlerAdapter.java:61) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:131) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.handler.ssl.SslHandler.exceptionCaught(SslHandler.java:615) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.ChannelHandlerAdapter.exceptionCaught(ChannelHandlerAdapter.java:61) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.DefaultChannelPipeline.fireExceptionCaught(DefaultChannelPipeline.java:773) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.handleReadException(AbstractNioByteChannel.java:89) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:134) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:485) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:452) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:346) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101) ~[netty-all-4.0.13.Final.jar:4.0.13.Final] at java.lang.Thread.run(Thread.java:724) ~[na:1.7.0_25] java.io.IOException: Eine vorhandene Verbindung wurde vom Remotehost geschlossen at sun.nio.ch.SocketDispatcher.write0(Native Method) at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:51) at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:94) at sun.nio.ch.IOUtil.write(IOUtil.java:51) at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:466) at io.netty.buffer.PooledUnsafeDirectByteBuf.getBytes(PooledUnsafeDirectByteBuf.java:208) at io.netty.buffer.PooledUnsafeDirectByteBuf.readBytes(PooledUnsafeDirectByteBuf.java:215) at io.netty.channel.socket.nio.NioSocketChannel.doWriteBytes(NioSocketChannel.java:214) at io.netty.channel.nio.AbstractNioByteChannel.doWrite(AbstractNioByteChannel.java:177) at io.netty.channel.socket.nio.NioSocketChannel.doWrite(NioSocketChannel.java:231) at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:682) at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:271) at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:651) at io.netty.channel.DefaultChannelPipeline$HeadHandler.flush(DefaultChannelPipeline.java:1038) at io.netty.channel.DefaultChannelHandlerContext.invokeFlush(DefaultChannelHandlerContext.java:675) at io.netty.channel.DefaultChannelHandlerContext.flush(DefaultChannelHandlerContext.java:656) at io.netty.channel.ChannelOutboundHandlerAdapter.flush(ChannelOutboundHandlerAdapter.java:115) at io.netty.channel.DefaultChannelHandlerContext.invokeFlush(DefaultChannelHandlerContext.java:675) at io.netty.channel.DefaultChannelHandlerContext.flush(DefaultChannelHandlerContext.java:656) at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:430) at io.netty.handler.ssl.SslHandler.closeOutboundAndChannel(SslHandler.java:1022) at io.netty.handler.ssl.SslHandler.close(SslHandler.java:397) at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561) at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546) at io.netty.channel.ChannelOutboundHandlerAdapter.close(ChannelOutboundHandlerAdapter.java:71) at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561) at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546) at io.netty.channel.ChannelDuplexHandler.close(ChannelDuplexHandler.java:73) at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561) at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546) at io.netty.channel.ChannelDuplexHandler.close(ChannelDuplexHandler.java:73) at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561) at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546) at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:424) at io.netty.channel.DefaultChannelPipeline.close(DefaultChannelPipeline.java:826) at io.netty.channel.AbstractChannel.close(AbstractChannel.java:178) at org.vertx.java.core.net.impl.VertxHandler$2.run(VertxHandler.java:99) at org.vertx.java.core.impl.DefaultContext$3.run(DefaultContext.java:176) at org.vertx.java.core.impl.DefaultContext.execute(DefaultContext.java:135) at org.vertx.java.core.net.impl.VertxHandler.exceptionCaught(VertxHandler.java:95) at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) at io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:131) at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) at io.netty.channel.ChannelHandlerAdapter.exceptionCaught(ChannelHandlerAdapter.java:61) at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) at io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:131) at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) at io.netty.handler.ssl.SslHandler.exceptionCaught(SslHandler.java:615) at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) at io.netty.channel.ChannelHandlerAdapter.exceptionCaught(ChannelHandlerAdapter.java:61) at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:276) at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:254) at io.netty.channel.DefaultChannelPipeline.fireExceptionCaught(DefaultChannelPipeline.java:773) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.handleReadException(AbstractNioByteChannel.java:89) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:134) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:485) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:452) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:346) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101) at java.lang.Thread.run(Thread.java:724) 21:47:38.913 [vert.x-eventloop-thread-1] DEBUG o.a.vertx.AtmosphereCoordinator -

we use following verticle code for a ssl server:

VertxAtmosphere.Builder b = new VertxAtmosphere.Builder(); HttpServer httpServer = vertx.createHttpServer();

    httpServer.requestHandler(new Handler<HttpServerRequest>()
    {
        public void handle(HttpServerRequest req)
        {
            String path = req.path();
            if (path.equals("/"))
            {
                path = "/index.html";
            }

            logger.info("Servicing request {}", path);
            req.response().sendFile("webapp/" + path);
        }
    });

    httpServer.setSSL(true);
    httpServer.setKeyStorePath(TRUSTED_KEYSTORE);
    httpServer.setKeyStorePassword(trustStorePassword);

    b.resource(Chat.class).httpServer(httpServer).url("/chat").build();

    httpServer.listen(4444);

Frintrop avatar Jan 04 '14 20:01 Frintrop

Does it work without atmosphere-vertx, plain WebSocket server by Vert.x and Netty?

flowersinthesand avatar Jan 05 '14 04:01 flowersinthesand

Yes. Our wasync client could not connect to a plain vertx websocket server, so i wrote a vert.x ssl websocket server and client with the same dependend jars. It works fine.

Frintrop avatar Jan 05 '14 14:01 Frintrop

i tried a little bit:

using vert.x 2.0.2 final with netty 4.0.10. works perfect. we get only one exception in debug mode. ( see below ). can not say if it is vert.x 2.1M2 or netty 4.0.13 causing the exception loop, as vert.x 2.1M2 needs netty 4.0.13 and i can not exchange vert.x or netty for further testing ... Hope that helps ...

12:25:25.452 [main] DEBUG i.n.u.i.l.InternalLoggerFactory - Using SLF4J as the default logging framework 12:25:25.456 [main] DEBUG i.n.c.MultithreadEventLoopGroup - -Dio.netty.eventLoopThreads: 16 12:25:25.461 [main] DEBUG i.n.util.internal.PlatformDependent - Platform: Windows 12:25:25.461 [main] DEBUG i.n.util.internal.PlatformDependent - Java version: 7 12:25:25.461 [main] DEBUG i.n.util.internal.PlatformDependent - -Dio.netty.noUnsafe: false 12:25:25.462 [main] DEBUG i.n.util.internal.PlatformDependent0 - java.nio.ByteBuffer.cleaner: available 12:25:25.462 [main] DEBUG i.n.util.internal.PlatformDependent0 - java.nio.Buffer.address: available 12:25:25.462 [main] DEBUG i.n.util.internal.PlatformDependent0 - sun.misc.Unsafe.theUnsafe: available 12:25:25.463 [main] DEBUG i.n.util.internal.PlatformDependent0 - sun.misc.Unsafe.copyMemory: available 12:25:25.463 [main] DEBUG i.n.util.internal.PlatformDependent0 - java.nio.Bits.unaligned: true 12:25:25.463 [main] DEBUG i.n.util.internal.PlatformDependent - sun.misc.Unsafe: available 12:25:25.463 [main] DEBUG i.n.util.internal.PlatformDependent - -Dio.netty.noJavassist: false 12:25:25.464 [main] DEBUG i.n.util.internal.PlatformDependent - Javassist: unavailable 12:25:25.464 [main] DEBUG i.n.util.internal.PlatformDependent - You don't have Javassist in your class path or you don't have enough permission to load dynamically generated classes. Please check the configuration for better performance. 12:25:25.464 [main] DEBUG i.n.util.internal.PlatformDependent - -Dio.netty.noPreferDirect: false 12:25:25.480 [main] DEBUG io.netty.channel.nio.NioEventLoop - -Dio.netty.noKeySetOptimization: false 12:25:25.480 [main] DEBUG io.netty.channel.nio.NioEventLoop - -Dio.netty.selectorAutoRebuildThreshold: 512 12:25:25.512 [main] DEBUG io.netty.util.ResourceLeakDetector - -Dio.netty.noResourceLeakDetection: true C:\Projects\ObjectiveIT\Levelnine\LevelnineAtmosphere\classes Type quit to stop the server 12:25:25.724 [vert.x-eventloop-thread-2] ERROR o.atmosphere.cpr.AtmosphereFramework - Class class Chat must have a package defined 12:25:25.746 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Atmosphere is using org.atmosphere.cpr.DefaultAnnotationProcessor for processing annotation 12:25:25.747 [vert.x-eventloop-thread-2] INFO o.a.cpr.DefaultAnnotationProcessor - AnnotationProcessor class org.atmosphere.cpr.DefaultAnnotationProcessor$BytecodeBasedAnnotationProcessor being used 12:25:25.767 [vert.x-eventloop-thread-2] DEBUG o.atmosphere.cpr.AtmosphereFramework - Scanning all classes on the classpath 12:25:25.767 [vert.x-eventloop-thread-2] INFO o.a.cpr.DefaultAnnotationProcessor - Found Annotation in Chat being scanned: interface org.atmosphere.config.service.ManagedService 12:25:25.813 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereHandler org.atmosphere.config.managed.ManagedAtmosphereHandler mapped to context-path /chat and Broadcaster Class org.atmosphere.cpr.DefaultBroadcaster 12:25:25.813 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereInterceptor [@ManagedService Interceptor, Atmosphere LifeCycle, org.atmosphere.interceptor.BroadcastOnPostAtmosphereInterceptor, Heartbeat Interceptor Support] mapped to AtmosphereHandler org.atmosphere.config.managed.ManagedAtmosphereHandler 12:25:26.085 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Installed WebSocketProtocol org.atmosphere.websocket.protocol.SimpleHttpProtocol 12:25:26.085 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Installing Default AtmosphereInterceptor 12:25:26.086 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - org.atmosphere.interceptor.OnDisconnectInterceptor : Browser disconnection detection 12:25:26.086 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - org.atmosphere.interceptor.WebSocketMessageSuspendInterceptor : org.atmosphere.interceptor.WebSocketMessageSuspendInterceptor 12:25:26.086 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - org.atmosphere.interceptor.JavaScriptProtocol : Atmosphere JavaScript Protocol 12:25:26.087 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - org.atmosphere.interceptor.JSONPAtmosphereInterceptor : JSONP Interceptor Support 12:25:26.087 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - org.atmosphere.interceptor.SSEAtmosphereInterceptor : SSE Interceptor Support 12:25:26.087 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - org.atmosphere.interceptor.HeartbeatInterceptor : Heartbeat Interceptor Support 12:25:26.088 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - org.atmosphere.interceptor.AndroidAtmosphereInterceptor : Android Interceptor Support 12:25:26.088 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - org.atmosphere.interceptor.PaddingAtmosphereInterceptor : Browser Padding Interceptor Support 12:25:26.088 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - org.atmosphere.interceptor.CacheHeadersInterceptor : Default Response's Headers Interceptor 12:25:26.088 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - org.atmosphere.interceptor.CorsInterceptor : CORS Interceptor Support 12:25:26.088 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Set org.atmosphere.cpr.AtmosphereInterceptor.disableDefaults to disable them. 12:25:26.089 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Using EndpointMapper class org.atmosphere.util.DefaultEndpointMapper 12:25:26.089 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Using BroadcasterCache: org.atmosphere.cache.UUIDBroadcasterCache 12:25:26.089 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Default Broadcaster Class: org.atmosphere.cpr.DefaultBroadcaster 12:25:26.089 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Broadcaster Polling Wait Time 100 12:25:26.089 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Shared ExecutorService supported: true 12:25:26.090 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Messaging Thread Pool Size: Unlimited 12:25:26.090 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Async I/O Thread Pool Size: 200 12:25:26.090 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Using BroadcasterFactory: org.atmosphere.cpr.DefaultBroadcasterFactory 12:25:26.090 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Using WebSocketProcessor: org.atmosphere.websocket.DefaultWebSocketProcessor 12:25:26.090 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - HttpSession supported: false 12:25:26.090 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Atmosphere is using DefaultAtmosphereObjectFactory for dependency injection and object creation 12:25:26.090 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Atmosphere is using async support: org.atmosphere.container.NettyCometSupport running under container: Vertosphere/1.0.0 12:25:26.092 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework - Atmosphere Framework 2.1.0-RC2 started. 12:25:26.092 [vert.x-eventloop-thread-2] INFO o.atmosphere.cpr.AtmosphereFramework -

For Atmosphere Framework Commercial Support, visit 
http://www.async-io.org/ or send an email to [email protected]

12:25:26.101 [vert.x-eventloop-thread-2] DEBUG i.n.buffer.PooledByteBufAllocator - -Dio.netty.allocator.numHeapArenas: 8 12:25:26.101 [vert.x-eventloop-thread-2] DEBUG i.n.buffer.PooledByteBufAllocator - -Dio.netty.allocator.numDirectArenas: 8 12:25:26.101 [vert.x-eventloop-thread-2] DEBUG i.n.buffer.PooledByteBufAllocator - -Dio.netty.allocator.pageSize: 8192 12:25:26.101 [vert.x-eventloop-thread-2] DEBUG i.n.buffer.PooledByteBufAllocator - -Dio.netty.allocator.maxOrder: 11 12:25:26.101 [vert.x-eventloop-thread-2] DEBUG i.n.buffer.PooledByteBufAllocator - -Dio.netty.allocator.chunkSize: 16777216 12:25:26.204 [vert.x-eventloop-thread-2] DEBUG i.n.util.internal.ThreadLocalRandom - -Dio.netty.initialSeedUniquifier: 0x68963625a1a2d5e9 12:25:26.275 [vert.x-eventloop-thread-2] DEBUG io.netty.util.NetUtil - Loopback interface: Software Loopback Interface 1 12:25:26.275 [vert.x-eventloop-thread-2] DEBUG io.netty.util.NetUtil - Loopback address: /127.0.0.1 (primary) 12:25:26.275 [vert.x-eventloop-thread-2] DEBUG io.netty.util.NetUtil - Loopback address: /0:0:0:0:0:0:0:1 Deployment ID is deployment-bd2bf4de-ff92-4b71-b324-a608f69e491f 12:25:26.755 [Thread-1] INFO o.atmosphere.cpr.AtmosphereFramework - Latest version of Atmosphere's JavaScript Client 2.1.2 12:25:31.779 [vert.x-eventloop-thread-2] DEBUG i.n.h.c.h.w.WebSocketServerHandshaker - [id: 0xa64b6364, /10.100.1.72:61865 => /10.100.1.72:4444] WS Version V13 server handshake 12:25:31.783 [vert.x-eventloop-thread-2] DEBUG i.n.h.c.h.w.WebSocketServerHandshaker - WS Version 13 Server Handshake key: orQtt8Yqk1veL0m46W6vcQ==. Response: 6RhtdkUycp/iB+7KpzUmTESRAr0=. 12:25:31.792 [vert.x-eventloop-thread-2] DEBUG i.n.h.c.h.w.WebSocket08FrameEncoder - Encoding WebSocket Frame opCode=1 length=50 12:25:31.794 [vert.x-eventloop-thread-2] INFO Chat - Browser 5512bf2a-8efd-4482-bea4-5a62d2fb2b0a connected. 12:25:31.796 [vert.x-eventloop-thread-2] DEBUG o.atmosphere.cpr.DefaultBroadcaster - Broadcast Interrupted null 12:25:31.796 [vert.x-eventloop-thread-2] DEBUG o.atmosphere.cpr.DefaultBroadcaster - Broadcast Interrupted null 12:25:33.706 [vert.x-eventloop-thread-2] DEBUG i.n.h.c.h.w.WebSocket08FrameDecoder - Decoding WebSocket Frame opCode=1 12:25:33.706 [vert.x-eventloop-thread-2] DEBUG i.n.h.c.h.w.WebSocket08FrameDecoder - Decoding WebSocket Frame opCode=1 12:25:33.706 [vert.x-eventloop-thread-2] DEBUG i.n.h.c.h.w.WebSocket08FrameDecoder - Decoding WebSocket Frame length=57 Browser:5512bf2a-8efd-4482-bea4-5a62d2fb2b0a Autor:teert Message:teert 12:25:33.737 [vert.x-eventloop-thread-2] WARN o.a.i.BroadcastOnPostAtmosphereInterceptor - BroadcastOnPostAtmosphereInterceptor received an empty body 12:25:33.741 [vert.x-eventloop-thread-2] DEBUG i.n.h.c.h.w.WebSocket08FrameEncoder - Encoding WebSocket Frame opCode=1 length=57 12:25:35.387 [vert.x-eventloop-thread-2] DEBUG o.a.vertx.AtmosphereCoordinator - java.io.IOException: Eine vorhandene Verbindung wurde vom Remotehost geschlossen at sun.nio.ch.SocketDispatcher.write0(Native Method) ~[na:1.7.0_25] at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:51) ~[na:1.7.0_25] at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:94) ~[na:1.7.0_25] at sun.nio.ch.IOUtil.write(IOUtil.java:51) ~[na:1.7.0_25] at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:466) ~[na:1.7.0_25] at io.netty.buffer.PooledUnsafeDirectByteBuf.getBytes(PooledUnsafeDirectByteBuf.java:208) ~[netty-all-4.0.10.Final.jar:na] at io.netty.buffer.PooledUnsafeDirectByteBuf.readBytes(PooledUnsafeDirectByteBuf.java:215) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.socket.nio.NioSocketChannel.doWriteBytes(NioSocketChannel.java:214) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.nio.AbstractNioByteChannel.doWrite(AbstractNioByteChannel.java:178) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.socket.nio.NioSocketChannel.doWrite(NioSocketChannel.java:231) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:680) [netty-all-4.0.10.Final.jar:na] at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:260) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:649) [netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelPipeline$HeadHandler.flush(DefaultChannelPipeline.java:1038) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.invokeFlush(DefaultChannelHandlerContext.java:674) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.flush(DefaultChannelHandlerContext.java:655) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.ChannelOutboundHandlerAdapter.flush(ChannelOutboundHandlerAdapter.java:115) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.invokeFlush(DefaultChannelHandlerContext.java:674) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.write(DefaultChannelHandlerContext.java:700) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.writeAndFlush(DefaultChannelHandlerContext.java:688) ~[netty-all-4.0.10.Final.jar:na] at io.netty.handler.ssl.SslHandler.flush0(SslHandler.java:487) ~[netty-all-4.0.10.Final.jar:na] at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:419) ~[netty-all-4.0.10.Final.jar:na] at io.netty.handler.ssl.SslHandler.closeOutboundAndChannel(SslHandler.java:965) ~[netty-all-4.0.10.Final.jar:na] at io.netty.handler.ssl.SslHandler.close(SslHandler.java:387) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:560) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:545) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.ChannelOutboundHandlerAdapter.close(ChannelOutboundHandlerAdapter.java:71) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:560) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:545) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.ChannelDuplexHandler.close(ChannelDuplexHandler.java:73) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:560) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:545) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.ChannelDuplexHandler.close(ChannelDuplexHandler.java:73) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:560) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:545) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:423) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelPipeline.close(DefaultChannelPipeline.java:826) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.AbstractChannel.close(AbstractChannel.java:177) ~[netty-all-4.0.10.Final.jar:na] at org.vertx.java.core.net.impl.VertxHandler$2.run(VertxHandler.java:99) ~[vertx-core-2.0.2-final.jar:na] at org.vertx.java.core.impl.DefaultContext$3.run(DefaultContext.java:170) ~[vertx-core-2.0.2-final.jar:na] at org.vertx.java.core.impl.DefaultContext.execute(DefaultContext.java:129) ~[vertx-core-2.0.2-final.jar:na] at org.vertx.java.core.net.impl.VertxHandler.exceptionCaught(VertxHandler.java:95) ~[vertx-core-2.0.2-final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:275) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:253) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:131) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:275) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:253) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.ChannelHandlerAdapter.exceptionCaught(ChannelHandlerAdapter.java:61) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:275) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:253) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:131) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:275) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:253) ~[netty-all-4.0.10.Final.jar:na] at io.netty.handler.ssl.SslHandler.exceptionCaught(SslHandler.java:594) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:275) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:253) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.ChannelHandlerAdapter.exceptionCaught(ChannelHandlerAdapter.java:61) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.invokeExceptionCaught(DefaultChannelHandlerContext.java:275) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelHandlerContext.fireExceptionCaught(DefaultChannelHandlerContext.java:253) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.DefaultChannelPipeline.fireExceptionCaught(DefaultChannelPipeline.java:773) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:125) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:480) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:447) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:341) ~[netty-all-4.0.10.Final.jar:na] at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101) ~[netty-all-4.0.10.Final.jar:na] at java.lang.Thread.run(Thread.java:724) ~[na:1.7.0_25] 12:25:35.389 [vert.x-eventloop-thread-2] DEBUG o.a.vertx.AtmosphereCoordinator - java.io.IOException: Eine vorhandene Verbindung wurde vom Remotehost geschlossen at sun.nio.ch.SocketDispatcher.read0(Native Method) ~[na:1.7.0_25] at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:43) ~[na:1.7.0_25] at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:225) ~[na:1.7.0_25] at sun.nio.ch.IOUtil.read(IOUtil.java:198) ~[na:1.7.0_25] at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:375) ~[na:1.7.0_25] at io.netty.buffer.UnpooledHeapByteBuf.setBytes(UnpooledHeapByteBuf.java:256) ~[netty-all-4.0.10.Final.jar:na] at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:870) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:208) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:87) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:480) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:447) ~[netty-all-4.0.10.Final.jar:na] at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:341) ~[netty-all-4.0.10.Final.jar:na] at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101) ~[netty-all-4.0.10.Final.jar:na] at java.lang.Thread.run(Thread.java:724) ~[na:1.7.0_25] 12:25:35.390 [vert.x-eventloop-thread-2] DEBUG o.a.w.DefaultWebSocketProcessor - Already closed org.atmosphere.vertx.VertxWebSocket@17627b7 12:25:35.390 [vert.x-eventloop-thread-2] DEBUG o.a.w.DefaultWebSocketProcessor - Already closed org.atmosphere.vertx.VertxWebSocket@17627b7

Frintrop avatar Jan 06 '14 11:01 Frintrop