Hi, I'm new to the undertow world..
I've a wrapper that handles the exchange end logic.. Before calling the
wrapper, undertow itself ends the exchange and calls the exchange complete
listener. This issue is happening randomly and not for all requests. I've
enabled debugging but it didn't provide proper information. I'm not sure
how to identify the action which closes the exchange?
For Ex :
RequestDispatcher {
void dispatch() {
this.exchange.dispatch(executor, () -> {
httpAction.execute(exchangeWrapper);
});
}
}
ResponseSender { // This class is used everywhere but send method called
only once
void send() {
if (!this.exchange.isResponseStarted()) {
throw error;
} else {
writeHeaders and
this.exchange.endExchange();
}
}
}
UndertowConfig {
void init() {
this.routingHandler = Handlers.routing();
this.server = Undertow.builder()
.setWorkerThreads(50)
.setServerOption(UndertowOptions.ENABLE_HTTP2, true)
.setServerOption(UndertowOptions.NO_REQUEST_TIMEOUT, 15000)
.setServerOption(UndertowOptions.REQUEST_PARSE_TIMEOUT,
150000)
.setServerOption(UndertowOptions.IDLE_TIMEOUT, 150000)
.addHttpListener(Integer.parseInt(port), "0.0.0.0",
routingHandler).build();
}
}
Please help me on this
--
Regards
Selvakumar
Show replies by date