Endless loop in Wildfly 10 XNIO / Undertow
fambad Jun 3, 2016 1:24 AMHi,
I have configured my wildfly as a reverse proxy for two destinations. The complete flow is as follows:
1. Client Sends https request (soap request) to wildfly proxy to port 8443
2. Wildfly Proxy sends the request via http to my local server (running jboss 6) at port 8180
3. The Local Server sends another request back to the wildfly proxy to the port 81 via http
4. The wildfly proxy gets this request and sends it to an external server (another machine) to port 443 via https
The first time the requst was successful. But if we do the request a second time the wildlfy proxy hangs in an endless loop when sending to the external server at step 4.
This is the log for step 4:
2016-06-02 14:45:50,341 TRACE [org.xnio.nio.selector] (default I/O-4) Selected key sun.nio.ch.SelectionKeyImpl@6ea1ef42 for java.nio.channels.SocketChannel[connection-pending local=/0.0.0.0:54133 remote=kluit861sv/10.2.241.61:443]
2016-06-02 14:45:50,341 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.protocols.ssl.UndertowXnioSsl$StreamConnectionChannelListener@7709ce33 on channel org.xnio.nio.NioSocketStreamConnection@3994f639
2016-06-02 14:45:50,341 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientProvider$2@2a88f3d7 on channel io.undertow.protocols.ssl.UndertowSslConnection@4bb2c23b
2016-06-02 14:45:50,357 TRACE [org.xnio.listener] (default I/O-4) Setting channel listener to io.undertow.server.handlers.proxy.ProxyConnectionPool$1$1@7273e528
2016-06-02 14:45:50,357 DEBUG [io.undertow.server.handlers.proxy] (default I/O-4) Sending request ClientRequest{path='/SpiritProxy/registry/XDSRouting', method=POST, protocol=HTTP/1.1} to target 127.0.0.1 for exchange HttpServerExchange{ POST /SpiritProxy/registry/XDSRouting request {Connection=[keep-alive], SOAPAction=["urn:ihe:iti:2007:RegisterDocumentSet-b"], Transfer-Encoding=[chunked], Content-Type=[application/soap+xml; charset=UTF-8], Host=[localhost:81]} response {}}
2016-06-02 14:45:50,357 DEBUG [io.undertow.server.handlers.proxy] (default I/O-4) Sent request ClientRequest{path='/SpiritProxy/registry/XDSRouting', method=POST, protocol=HTTP/1.1} to target 127.0.0.1 for exchange HttpServerExchange{ POST /SpiritProxy/registry/XDSRouting request {Connection=[keep-alive], SOAPAction=["urn:ihe:iti:2007:RegisterDocumentSet-b"], Transfer-Encoding=[chunked], Content-Type=[application/soap+xml; charset=UTF-8], Host=[localhost:81]} response {}}
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) write
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Starting request
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header 'SOAPAction'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header value '"urn:ihe:iti:2007:RegisterDocumentSet-b"'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header 'X-Forwarded-Server'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header value 'localhost'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header 'Connection'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header value 'keep-alive'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header 'X-Forwarded-Proto'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header value 'http'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header 'X-Forwarded-Port'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header value '81'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header 'X-Forwarded-For'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header value '127.0.0.1'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header 'Transfer-Encoding'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header value 'chunked'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header 'Content-Type'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header value 'application/soap+xml; charset=UTF-8'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header 'Host'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header value 'localhost:81'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header 'X-Forwarded-Host'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Processing header value 'localhost'
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Continuation
2016-06-02 14:45:50,357 TRACE [org.xnio.listener] (default I/O-4) Setting channel listener to Transfer channel listener (io.undertow.server.HttpServerExchange$ReadDispatchChannel@6cc8e061 to io.undertow.client.http.HttpClientExchange$1@133b064) -> (Closing channel listener and io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener@5c4d1963)
2016-06-02 14:45:50,357 TRACE [org.xnio.listener] (default I/O-4) Setting channel listener to Transfer channel listener (io.undertow.server.HttpServerExchange$ReadDispatchChannel@6cc8e061 to io.undertow.client.http.HttpClientExchange$1@133b064) -> (Closing channel listener and io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener@5c4d1963)
2016-06-02 14:45:50,357 TRACE [org.xnio.nio] (default I/O-4) Running task org.xnio.AbstractIoFuture$1@317aed67
2016-06-02 14:45:50,357 TRACE [org.xnio.nio] (default I/O-4) Running task org.xnio.AbstractIoFuture$1@1a9ac8c1
2016-06-02 14:45:50,357 TRACE [org.xnio.nio] (default I/O-4) Running task org.xnio.nio.NioHandle$1@636eb66
2016-06-02 14:45:50,357 TRACE [org.xnio.listener] (default I/O-4) Invoking listener Setter delegating channel listener -> Simple channel listener setter (currently=Transfer channel listener (io.undertow.server.HttpServerExchange$ReadDispatchChannel@6cc8e061 to io.undertow.client.http.HttpClientExchange$1@133b064) -> (Closing channel listener and io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener@5c4d1963)) on channel org.xnio.conduits.ConduitStreamSourceChannel@3ba50551
2016-06-02 14:45:50,357 TRACE [org.xnio.listener] (default I/O-4) Invoking listener Transfer channel listener (io.undertow.server.HttpServerExchange$ReadDispatchChannel@6cc8e061 to io.undertow.client.http.HttpClientExchange$1@133b064) -> (Closing channel listener and io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener@5c4d1963) on channel io.undertow.server.HttpServerExchange$ReadDispatchChannel@6cc8e061
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) write
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Flushing remaining buffer
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) write
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Flushing remaining buffer
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) write
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Flushing remaining buffer
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) write
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Flushing remaining buffer
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) write
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Flushing remaining buffer
2016-06-02 14:45:50,357 TRACE [org.xnio.nio.selector] (default I/O-4) Beginning select on sun.nio.ch.WindowsSelectorImpl@2ef6f5ba
2016-06-02 14:45:50,357 TRACE [org.xnio.nio.selector] (default I/O-4) Selected on sun.nio.ch.WindowsSelectorImpl@2ef6f5ba
2016-06-02 14:45:50,357 TRACE [org.xnio.nio.selector] (default I/O-4) Selected key sun.nio.ch.SelectionKeyImpl@2fb7972d for java.nio.channels.SocketChannel[connected local=/127.0.0.1:81 remote=/127.0.0.1:54128]
2016-06-02 14:45:50,357 TRACE [org.xnio.listener] (default I/O-4) Invoking listener Setter delegating channel listener -> Simple channel listener setter (currently=Transfer channel listener (io.undertow.server.HttpServerExchange$ReadDispatchChannel@6cc8e061 to io.undertow.client.http.HttpClientExchange$1@133b064) -> (Closing channel listener and io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener@5c4d1963)) on channel org.xnio.conduits.ConduitStreamSourceChannel@3ba50551
2016-06-02 14:45:50,357 TRACE [org.xnio.listener] (default I/O-4) Invoking listener Transfer channel listener (io.undertow.server.HttpServerExchange$ReadDispatchChannel@6cc8e061 to io.undertow.client.http.HttpClientExchange$1@133b064) -> (Closing channel listener and io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener@5c4d1963) on channel io.undertow.server.HttpServerExchange$ReadDispatchChannel@6cc8e061
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) write
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Flushing remaining buffer
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) write
2016-06-02 14:45:50,357 TRACE [io.undertow.client.request] (default I/O-4) Flushing remaining buffer
2016-06-02 14:45:50,357 TRACE [org.xnio.nio.selector] (default I/O-4) Beginning select on sun.nio.ch.WindowsSelectorImpl@2ef6f5ba
2016-06-02 14:45:50,388 TRACE [org.xnio.nio.selector] (default I/O-4) Selected on sun.nio.ch.WindowsSelectorImpl@2ef6f5ba
2016-06-02 14:45:50,388 TRACE [org.xnio.nio.selector] (default I/O-4) Selected key sun.nio.ch.SelectionKeyImpl@6ea1ef42 for java.nio.channels.SocketChannel[connected local=/10.111.7.8:54133 remote=kluit861sv/10.2.241.61:443]
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$3@29bf1d1e
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener Setter delegating channel listener -> Simple channel listener setter (currently=Transfer channel listener (io.undertow.server.HttpServerExchange$ReadDispatchChannel@6cc8e061 to io.undertow.client.http.HttpClientExchange$1@133b064) -> (Closing channel listener and io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener@5c4d1963)) on channel org.xnio.conduits.ConduitStreamSinkChannel@384c9697
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener Transfer channel listener (io.undertow.server.HttpServerExchange$ReadDispatchChannel@6cc8e061 to io.undertow.client.http.HttpClientExchange$1@133b064) -> (Closing channel listener and io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener@5c4d1963) on channel io.undertow.client.http.HttpClientExchange$1@133b064
2016-06-02 14:45:50,388 TRACE [io.undertow.client.request] (default I/O-4) write
2016-06-02 14:45:50,388 TRACE [io.undertow.client.request] (default I/O-4) Flushing remaining buffer
2016-06-02 14:45:50,388 TRACE [org.xnio.nio.selector] (default I/O-4) Beginning select on sun.nio.ch.WindowsSelectorImpl@2ef6f5ba
2016-06-02 14:45:50,388 TRACE [org.xnio.nio.selector] (default I/O-4) Selected on sun.nio.ch.WindowsSelectorImpl@2ef6f5ba
2016-06-02 14:45:50,388 TRACE [org.xnio.nio.selector] (default I/O-4) Selected key sun.nio.ch.SelectionKeyImpl@6ea1ef42 for java.nio.channels.SocketChannel[connected local=/10.111.7.8:54133 remote=kluit861sv/10.2.241.61:443]
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener Setter delegating channel listener -> Simple channel listener setter (currently=Transfer channel listener (io.undertow.server.HttpServerExchange$ReadDispatchChannel@6cc8e061 to io.undertow.client.http.HttpClientExchange$1@133b064) -> (Closing channel listener and io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener@5c4d1963)) on channel org.xnio.conduits.ConduitStreamSinkChannel@384c9697
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener Transfer channel listener (io.undertow.server.HttpServerExchange$ReadDispatchChannel@6cc8e061 to io.undertow.client.http.HttpClientExchange$1@133b064) -> (Closing channel listener and io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener@5c4d1963) on channel io.undertow.client.http.HttpClientExchange$1@133b064
2016-06-02 14:45:50,388 TRACE [io.undertow.client.request] (default I/O-4) write
2016-06-02 14:45:50,388 TRACE [io.undertow.client.request] (default I/O-4) Flushing remaining buffer
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$4$1@71072d10
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@7424c54f
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@25226138
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@7906a325
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@31a16eb8
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@637dcb7e
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@55e04d88
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@19b3c39a
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@23ddaaba
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@2e76b384
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@792d27cf
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@7e859463
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@30c36973
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@2b32067c
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@3b315f8a
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@6945e203
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@426686a9
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@795c697f
2016-06-02 14:45:50,388 TRACE [org.xnio.listener] (default I/O-4) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@5473ae20 on channel org.xnio.conduits.ConduitStreamSourceChannel@1863a8af
2016-06-02 14:45:50,388 TRACE [org.xnio.nio] (default I/O-4) Running task io.undertow.protocols.ssl.SslConduit$1@48a0a4d1
... --> These last two lines never end
So I do not understand what is the error. Because a first time it works.
What I can see at the end of the first request I found follow error in the log. Maybe this could be the cause:
2016-06-02 14:45:04,341 TRACE [org.xnio.nio.selector] (default I/O-2) Selected on sun.nio.ch.WindowsSelectorImpl@28a81162
2016-06-02 14:45:04,341 TRACE [org.xnio.nio.selector] (default I/O-2) Selected key sun.nio.ch.SelectionKeyImpl@667a9796 for java.nio.channels.SocketChannel[connected local=/10.111.7.8:54119 remote=kluit861sv/10.2.241.61:443]
2016-06-02 14:45:04,341 TRACE [org.xnio.listener] (default I/O-2) Invoking listener Setter delegating channel listener -> Simple channel listener setter (currently=null) on channel org.xnio.conduits.ConduitStreamSinkChannel@3476cb16
2016-06-02 14:45:04,341 DEBUG [io.undertow.request] (default I/O-2) suspending writes on org.xnio.conduits.ConduitStreamSinkChannel@3476cb16 to prevent listener runaway
2016-06-02 14:45:04,341 TRACE [org.xnio.nio.selector] (default I/O-2) Beginning select on sun.nio.ch.WindowsSelectorImpl@28a81162
2016-06-02 14:45:05,122 TRACE [org.xnio.nio.selector] (default I/O-2) Selected on sun.nio.ch.WindowsSelectorImpl@28a81162
2016-06-02 14:45:05,122 TRACE [org.xnio.nio.selector] (default I/O-2) Selected key sun.nio.ch.SelectionKeyImpl@667a9796 for java.nio.channels.SocketChannel[connected local=/10.111.7.8:54119 remote=kluit861sv/10.2.241.61:443]
2016-06-02 14:45:05,122 TRACE [org.xnio.listener] (default I/O-2) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@4ee15bdc on channel org.xnio.conduits.ConduitStreamSourceChannel@46a938dc
2016-06-02 14:45:05,122 DEBUG [io.undertow.server.handlers.proxy] (default I/O-2) Received response io.undertow.client.ClientResponse@762a74d6 for request ClientRequest{path='/SpiritProxy/registry/XDSRouting', method=POST, protocol=HTTP/1.1} for exchange HttpServerExchange{ POST /SpiritProxy/registry/XDSRouting request {Connection=[keep-alive], SOAPAction=["urn:ihe:iti:2007:RegisterDocumentSet-b"], Transfer-Encoding=[chunked], Content-Type=[application/soap+xml; charset=UTF-8], Host=[localhost:81]} response {}}
2016-06-02 14:45:05,122 TRACE [io.undertow.server.HttpServerExchange] (default I/O-2) Starting to write response for HttpServerExchange{ POST /SpiritProxy/registry/XDSRouting request {Connection=[keep-alive], SOAPAction=["urn:ihe:iti:2007:RegisterDocumentSet-b"], Transfer-Encoding=[chunked], Content-Type=[application/soap+xml; charset=UTF-8], Host=[localhost:81]} response {Connection=[close], X-Powered-By=[Undertow/1], Server=[WildFly/9], Strict-Transport-Security=[max-age=15768000], Content-Type=[application/soap+xml; action="urn:ihe:iti:2007:RegisterDocumentSet-bResponse";charset=utf-8], Content-Length=[605], Date=[Thu, 02 Jun 2016 12:45:05 GMT]}}
2016-06-02 14:45:05,122 TRACE [org.xnio.safe-close] (default I/O-2) Closing resource io.undertow.protocols.ssl.UndertowSslConnection@30f6611a
2016-06-02 14:45:05,122 DEBUG [io.undertow.request.io] (default I/O-2) UT005013: An IOException occurred: java.io.IOException: javax.net.ssl.SSLException: Inbound closed before receiving peer's close_notify: possible truncation attack?
at io.undertow.protocols.ssl.SslConduit.notifyReadClosed(SslConduit.java:577)
at io.undertow.protocols.ssl.SslConduit.closed(SslConduit.java:920)
at io.undertow.protocols.ssl.SslConduit.close(SslConduit.java:1015)
at io.undertow.protocols.ssl.UndertowSslConnection.closeAction(UndertowSslConnection.java:146)
at org.xnio.Connection.close(Connection.java:132)
at org.xnio.IoUtils.safeClose(IoUtils.java:134)
at io.undertow.client.http.HttpClientConnection.exchangeDone(HttpClientConnection.java:447)
at io.undertow.client.http.HttpClientExchange.terminateResponse(HttpClientExchange.java:96)
at io.undertow.client.http.HttpClientConnection$2.handleEvent(HttpClientConnection.java:100)
at io.undertow.client.http.HttpClientConnection$2.handleEvent(HttpClientConnection.java:97)
at io.undertow.conduits.FixedLengthStreamSourceConduit.invokeFinishListener(FixedLengthStreamSourceConduit.java:351)
at io.undertow.conduits.FixedLengthStreamSourceConduit.exitRead(FixedLengthStreamSourceConduit.java:345)
at io.undertow.conduits.FixedLengthStreamSourceConduit.read(FixedLengthStreamSourceConduit.java:255)
at org.xnio.conduits.ConduitStreamSourceChannel.read(ConduitStreamSourceChannel.java:127)
at io.undertow.channels.DetachableStreamSourceChannel.read(DetachableStreamSourceChannel.java:209)
at io.undertow.util.Transfer.initiateTransfer(Transfer.java:64)
at io.undertow.server.handlers.proxy.ProxyHandler$ResponseCallback.completed(ProxyHandler.java:652)
at io.undertow.server.handlers.proxy.ProxyHandler$ResponseCallback.completed(ProxyHandler.java:607)
at io.undertow.client.http.HttpClientExchange.setResponse(HttpClientExchange.java:115)
at io.undertow.client.http.HttpClientConnection$ClientReadListener.handleEvent(HttpClientConnection.java:577)
at io.undertow.client.http.HttpClientConnection$ClientReadListener.handleEvent(HttpClientConnection.java:472)
at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
at org.xnio.conduits.ReadReadyHandler$ChannelListenerHandler.readReady(ReadReadyHandler.java:66)
at io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler.readReady(SslConduit.java:1059)
at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:88)
at org.xnio.nio.WorkerThread.run(WorkerThread.java:559)
Caused by: javax.net.ssl.SSLException: Inbound closed before receiving peer's close_notify: possible truncation attack?
at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1666)
at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1634)
at sun.security.ssl.SSLEngineImpl.closeInbound(SSLEngineImpl.java:1561)
at io.undertow.protocols.ssl.SslConduit.notifyReadClosed(SslConduit.java:575)
... 25 more
2016-06-02 14:45:05,138 TRACE [org.xnio.safe-close] (default I/O-2) Closing resource org.xnio.nio.NioSocketStreamConnection@2cb84860
2016-06-02 14:45:05,138 TRACE [org.xnio.nio] (default I/O-2) Cancelling key sun.nio.ch.SelectionKeyImpl@667a9796 of java.nio.channels.SocketChannel[connected local=/10.111.7.8:54119 remote=kluit861sv/10.2.241.61:443] (same thread)
2016-06-02 14:45:05,138 TRACE [org.xnio.listener] (default I/O-2) Invoking listener io.undertow.client.http.HttpClientConnection$5@7c3fb1c4 on channel io.undertow.protocols.ssl.UndertowSslConnection@30f6611a
2016-06-02 14:45:05,138 TRACE [org.xnio.listener] (default I/O-2) Invoking listener io.undertow.server.handlers.proxy.ProxyConnectionPool$1$1@5b4b34a6 on channel io.undertow.client.http.HttpClientConnection@56c2043
2016-06-02 14:45:05,138 TRACE [org.xnio.listener] (default I/O-2) Setting channel listener to Closing channel listener
2016-06-02 14:45:05,138 TRACE [org.xnio.listener] (default I/O-2) Setting channel listener to io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener@5bd59c7f
2016-06-02 14:45:05,138 TRACE [org.xnio.nio] (default I/O-2) Running task io.undertow.protocols.ssl.SslConduit$1@7b1aa0b9
2016-06-02 14:45:05,138 TRACE [org.xnio.listener] (default I/O-2) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@4ee15bdc on channel org.xnio.conduits.ConduitStreamSourceChannel@46a938dc
2016-06-02 14:45:05,138 DEBUG [io.undertow.client] (default I/O-2) Connection closed with IOException: java.nio.channels.ClosedChannelException
at io.undertow.protocols.ssl.SslConduit.read(SslConduit.java:528)
at org.xnio.conduits.PushBackStreamSourceConduit.read(PushBackStreamSourceConduit.java:52)
at org.xnio.conduits.ConduitStreamSourceChannel.read(ConduitStreamSourceChannel.java:127)
at io.undertow.client.http.HttpClientConnection$ClientReadListener.handleEvent(HttpClientConnection.java:487)
at io.undertow.client.http.HttpClientConnection$ClientReadListener.handleEvent(HttpClientConnection.java:472)
at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
at org.xnio.conduits.ReadReadyHandler$ChannelListenerHandler.readReady(ReadReadyHandler.java:66)
at io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler.readReady(SslConduit.java:1059)
at io.undertow.protocols.ssl.SslConduit$1.run(SslConduit.java:229)
at org.xnio.nio.WorkerThread.safeRun(WorkerThread.java:580)
at org.xnio.nio.WorkerThread.run(WorkerThread.java:464)
2016-06-02 14:45:05,138 TRACE [org.xnio.safe-close] (default I/O-2) Closing resource io.undertow.protocols.ssl.UndertowSslConnection@30f6611a
2016-06-02 14:45:05,138 TRACE [org.xnio.nio] (default I/O-2) Running task io.undertow.protocols.ssl.SslConduit$1@603b368d
2016-06-02 14:45:05,138 TRACE [org.xnio.listener] (default I/O-2) Invoking listener io.undertow.client.http.HttpClientConnection$ClientReadListener@4ee15bdc on channel org.xnio.conduits.ConduitStreamSourceChannel@46a938dc
2016-06-02 14:45:05,138 DEBUG [io.undertow.client] (default I/O-2) Connection closed with IOException: java.nio.channels.ClosedChannelException
at io.undertow.protocols.ssl.SslConduit.read(SslConduit.java:528)
at org.xnio.conduits.PushBackStreamSourceConduit.read(PushBackStreamSourceConduit.java:52)
at org.xnio.conduits.ConduitStreamSourceChannel.read(ConduitStreamSourceChannel.java:127)
at io.undertow.client.http.HttpClientConnection$ClientReadListener.handleEvent(HttpClientConnection.java:487)
at io.undertow.client.http.HttpClientConnection$ClientReadListener.handleEvent(HttpClientConnection.java:472)
at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
at org.xnio.conduits.ReadReadyHandler$ChannelListenerHandler.readReady(ReadReadyHandler.java:66)
at io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler.readReady(SslConduit.java:1059)
at io.undertow.protocols.ssl.SslConduit$1.run(SslConduit.java:229)
at org.xnio.nio.WorkerThread.safeRun(WorkerThread.java:580)
at org.xnio.nio.WorkerThread.run(WorkerThread.java:464)
I hope someone can help me. I have no ideas.
This is my proxy configuration:
<subsystem xmlns="urn:jboss:domain:undertow:3.0">
<buffer-cache name="default"/>
<server name="Proxy-Server-Oracle">
<http-listener name="Listener-Proxy" redirect-socket="https-proxy" socket-binding="http-proxy" certificate-forwarding="true"/>
<https-listener name="Listener-Proxy-Secure" socket-binding="https-proxy" verify-client="REQUIRED" security-realm="UndertowRealm" enabled-protocols="TLSv1,TLSv1.1,TLSv1.2" max-post-size="1073741824"/>
<host name="default-host" alias="localhost">
<location name="/" handler="pegasos-proxy"/>
</host>
</server>
<server name="Proxy-Server-ELGA-Proxy">
<http-listener name="Listener-Proxy-ELGA-Proxy" socket-binding="http-proxy-elga-proxy"/>
<host name="default-host" alias="localhost">
<location name="/" handler="elga-proxy"/>
</host>
</server>
<servlet-container name="default">
<jsp-config/>
<websockets/>
</servlet-container>
<handlers>
<reverse-proxy name="pegasos-proxy">
<host name="Proxy Oracle" outbound-socket-binding="pegasos-oracle" scheme="http" path="/" />
</reverse-proxy>
<reverse-proxy name="elga-proxy">
<host name="Proxy ELGA-Proxy" outbound-socket-binding="elga-tiani-proxy" scheme="https" path="/" security-realm="ElgaRealm" />
</reverse-proxy>
</handlers>
</subsystem>
</profile>
<interfaces>
<interface name="management">
<inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
</interface>
<!-- the default interface -->
<interface name="public">
<inet-address value="${jboss.bind.address:0.0.0.0}"/>
</interface>
</interfaces>
<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">
<socket-binding name="management-native" interface="management" port="${jboss.management.native.port:19999}"/>
<socket-binding name="management-http" interface="management" port="19990"/>
<socket-binding name="http-proxy" port="80"/>
<socket-binding name="https-proxy" port="8443"/>
<outbound-socket-binding name="pegasos-oracle">
<remote-destination host="127.0.0.1" port="8180"/>
</outbound-socket-binding>
<socket-binding name="http-proxy-elga-proxy" port="81"/>
<outbound-socket-binding name="elga-tiani-proxy">
<remote-destination host="kluit861sv" port="443"/>
</outbound-socket-binding>
</socket-binding-group>