users@grizzly.java.net

Exception

From: Hou, Chunxiao <chunxiao.hou_at_jpmorgan.com>
Date: Mon, 23 Sep 2013 22:01:24 +0000

Hi there,

I saw this exception (see below) which happens randomly after I upgraded Jersey to 2.3. Can someone please help to take a look? Many Thanks.
I am running embedded Grizzly server -

Grizzly http Server:
ResourceConfig rc = new PackagesResourceConfig(RESOURCE_DIR);
rc.getFeatures().put(JSONConfiguration.FEATURE_POJO_MAPPING, true);
httpServer = GrizzlyServerFactory.createHttpServer(BASE_URI, rc);

Resource:
public abstract class AbstractGetRiskResource {
                private static final Logger logger = LoggerFactory.getLogger(AbstractGetRiskResource.class);

                @GET
                public Response getMessage(@Context final UriInfo uriInfo, @Context HttpHeaders hh) {
                                String requestUri = uriInfo.getRequestUri().toString();
...
}

Thanks,
David

Sep 23, 2013 5:51:06 PM org.glassfish.jersey.server.ServerRuntime$Responder writeResponse
SEVERE: An I/O error has occurred while writing a response message entity to the container output stream.
org.glassfish.jersey.server.internal.process.MappableException: java.io.IOException: An established connection was aborted by the software in your host machine
       at org.glassfish.jersey.server.internal.MappableExceptionWrapperInterceptor.aroundWriteTo(MappableExceptionWrapperInterceptor.java:96)
       at org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:149)
       at org.glassfish.jersey.message.internal.MessageBodyFactory.writeTo(MessageBodyFactory.java:1139)
       at org.glassfish.jersey.server.ServerRuntime$Responder.writeResponse(ServerRuntime.java:562)
       at org.glassfish.jersey.server.ServerRuntime$Responder.processResponse(ServerRuntime.java:357)
       at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:347)
       at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:258)
       at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
       at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
       at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
       at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
       at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
       at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:318)
       at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:235)
       at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:983)
       at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:330)
       at org.glassfish.grizzly.http.server.HttpHandler$1.run(HttpHandler.java:209)
       at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)
       at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
       at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: An established connection was aborted by the software in your host machine
       at sun.nio.ch.SocketDispatcher.write0(Native Method)
       at sun.nio.ch.SocketDispatcher.write(Unknown Source)
       at sun.nio.ch.IOUtil.writeFromNativeBuffer(Unknown Source)
       at sun.nio.ch.IOUtil.write(Unknown Source)
       at sun.nio.ch.SocketChannelImpl.write(Unknown Source)
       at org.glassfish.grizzly.nio.transport.TCPNIOTransport.flushByteBuffer(TCPNIOTransport.java:1251)
       at org.glassfish.grizzly.nio.transport.TCPNIOAsyncQueueWriter.write0(TCPNIOAsyncQueueWriter.java:107)
       at org.glassfish.grizzly.nio.AbstractNIOAsyncQueueWriter.write(AbstractNIOAsyncQueueWriter.java:273)
       at org.glassfish.grizzly.nio.AbstractNIOAsyncQueueWriter.write(AbstractNIOAsyncQueueWriter.java:180)
       at org.glassfish.grizzly.nio.AbstractNIOAsyncQueueWriter.write(AbstractNIOAsyncQueueWriter.java:70)
       at org.glassfish.grizzly.nio.transport.TCPNIOTransportFilter.handleWrite(TCPNIOTransportFilter.java:128)
       at org.glassfish.grizzly.filterchain.TransportFilter.handleWrite(TransportFilter.java:191)
       at org.glassfish.grizzly.filterchain.ExecutorResolver$8.execute(ExecutorResolver.java:111)
       at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
       at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
       at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
       at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
       at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
       at org.glassfish.grizzly.filterchain.FilterChainContext.write(FilterChainContext.java:853)
       at org.glassfish.grizzly.filterchain.FilterChainContext.write(FilterChainContext.java:822)
       at org.glassfish.grizzly.http.io.OutputBuffer.flushBuffer(OutputBuffer.java:1011)
       at org.glassfish.grizzly.http.io.OutputBuffer.write(OutputBuffer.java:676)
       at org.glassfish.grizzly.http.server.NIOOutputStreamImpl.write(NIOOutputStreamImpl.java:83)
       at org.glassfish.jersey.message.internal.CommittingOutputStream.write(CommittingOutputStream.java:227)
       at sun.nio.cs.StreamEncoder.writeBytes(Unknown Source)
       at sun.nio.cs.StreamEncoder.implWrite(Unknown Source)
       at sun.nio.cs.StreamEncoder.write(Unknown Source)
       at java.io.OutputStreamWriter.write(Unknown Source)
       at java.io.BufferedWriter.flushBuffer(Unknown Source)
       at java.io.BufferedWriter.write(Unknown Source)
       at org.glassfish.jersey.message.internal.ReaderWriter.writeToAsString(ReaderWriter.java:191)
       at org.glassfish.jersey.message.internal.AbstractMessageReaderWriterProvider.writeToAsString(AbstractMessageReaderWriterProvider.java:129)
       at org.glassfish.jersey.message.internal.StringMessageProvider.writeTo(StringMessageProvider.java:99)
       at org.glassfish.jersey.message.internal.StringMessageProvider.writeTo(StringMessageProvider.java:59)
       at org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.invokeWriteTo(WriterInterceptorExecutor.java:243)
       at org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.aroundWriteTo(WriterInterceptorExecutor.java:230)
       at org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:149)
       at org.glassfish.jersey.server.internal.JsonWithPaddingInterceptor.aroundWriteTo(JsonWithPaddingInterceptor.java:103)
       at org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:149)
       at org.glassfish.jersey.server.internal.MappableExceptionWrapperInterceptor.aroundWriteTo(MappableExceptionWrapperInterceptor.java:88)
       ... 19 more


This email is confidential and subject to important disclaimers and conditions including on offers for the purchase or sale of securities, accuracy and completeness of information, viruses, confidentiality, legal privilege, and legal entity disclaimers, available at http://www.jpmorgan.com/pages/disclosures/email.