Uploaded image for project: 'HttpComponents HttpCore'
  1. HttpComponents HttpCore
  2. HTTPCORE-283

Async server: NPE in AsyncNHttpServiceHandler when throwing a HttpException from NHttpRequestHandler.entityRequest

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 4.1.3
    • 4.1.4, 4.2-beta1
    • HttpCore NIO
    • None

    Description

      I want to implement a completely asynchronous server, I've used the NHttpServer example but changing the handler to AsyncNHttpServiceHandler.

      When throwing this exception from entityRequest():

      public ConsumingNHttpEntity entityRequest(HttpEntityEnclosingRequest request, HttpContext context)
      throws HttpException, IOException

      { throw new MethodNotSupportedException("method not supported"); }

      the DefaultListeningIOReactor shutdowns throwing the following exception:

      org.apache.http.nio.reactor.IOReactorException: I/O dispatch worker terminated abnormally
      at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:321)
      at NHttpServer.main(NHttpServer.java:67)
      Caused by: java.lang.NullPointerException
      at org.apache.http.nio.protocol.AsyncNHttpServiceHandler.inputReady(AsyncNHttpServiceHandler.java:313)
      at org.apache.http.impl.nio.DefaultNHttpServerConnection.consumeInput(DefaultNHttpServerConnection.java:175)
      at org.apache.http.impl.nio.DefaultServerIOEventDispatch.inputReady(DefaultServerIOEventDispatch.java:154)
      at org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:158)
      at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:340)
      at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:318)
      at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:278)
      at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
      at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:542)
      at java.lang.Thread.run(Thread.java:619)

      I'm attaching the example to test the error

      Attachments

        1. NHttpServer.java
          5 kB
          Isaac Cruz Ballesteros

        Activity

          People

            Unassigned Unassigned
            icruz Isaac Cruz Ballesteros
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: