If users receive an HTTP status 400 error, e.g. on login, it can be difficult to find detailed error messages. It is very likely that all you get is the following message:

This error is issued by the Tomcat webserver. Tomcat offers the possibility to create a more detailed error report.
To turn on the error detail, you can simply set the ivy.yaml
configuration Errors.ShowDetailsToEndUser
to true.
The config will be considered by Tomcat with the upcoming releases 12.0.5 and 10.0.27 (XIVY-16279).

The user then receives a more useful error message:

Up to now we have encountered the following error:
java.lang.IllegalArgumentException: Request header is too large
org.apache.coyote.http11.Http11InputBuffer.fill(Http11InputBuffer.java:781)
org.apache.coyote.http11.Http11InputBuffer.parseHeader(Http11InputBuffer.java:975)
org.apache.coyote.http11.Http11InputBuffer.parseHeaders(Http11InputBuffer.java:596)
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:292)
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:937)
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1793)
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190)
org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
java.base/java.lang.Thread.run(Thread.java:1583)
If you have an idea of why the request header is too large, you should investigate whether it is possible to reduce it. If this is not obvious, you can increase the ivy.yaml config Connector.HTTP.MaxHttpHeaderSize
or Connector.HTTPS.MaxHttpHeaderSize
.
