NPE in HttpCoreNIOSender and "I/O reactor has been shut down"
-------------------------------------------------------------
Key: SYNAPSE-205
URL: https://issues.apache.org/jira/browse/SYNAPSE-205
Project: Synapse
Issue Type: Bug
Components: Transports
Affects Versions: NIGHTLY
Reporter: Andreas Veithen
Priority: Critical
When the target service is not available, a request to the proxy service causes
the following exception:
Exception in thread "HttpCoreNIOSender" java.lang.NullPointerException
at
org.apache.synapse.transport.nhttp.HttpCoreNIOSender$3.handleError(HttpCoreNIOSender.java:460)
at
org.apache.synapse.transport.nhttp.HttpCoreNIOSender$3.timeout(HttpCoreNIOSender.java:439)
at
org.apache.http.impl.nio.reactor.SessionRequestImpl.timeout(SessionRequestImpl.java:151)
at
org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processTimeouts(DefaultConnectingIOReactor.java:152)
at
org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvents(DefaultConnectingIOReactor.java:96)
at
org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:158)
at
org.apache.synapse.transport.nhttp.HttpCoreNIOSender.executeClientEngine(HttpCoreNIOSender.java:139)
at
org.apache.synapse.transport.nhttp.HttpCoreNIOSender.access$000(HttpCoreNIOSender.java:68)
at
org.apache.synapse.transport.nhttp.HttpCoreNIOSender$1.run(HttpCoreNIOSender.java:101)
at java.lang.Thread.run(Thread.java:613)
Any further request then fails with "java.lang.IllegalStateException: I/O
reactor has been shut down".
The instruction in HttpCoreNIOSender that causes the NPE is as follows:
MessageContext nioFaultMessageContext =
MessageContextBuilder.createFaultMessageContext(
mc, new AxisFault(exception.toString(), exception));
Probably, when handleError is called by the timeout (rather than the failed)
method, as is the case here (see stacktrace), exception is null. The
handleError method doesn't handle this situation appropriately.
Note that this issue is similar but not identical to the one described in
SYNAPSE-168.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]