kumuluz / kumuluzee

Lightweight open-source framework for developing microservices using standard Java EE technologies and migrating Java EE to cloud-native architecture.
https://ee.kumuluz.com
MIT License
291 stars 71 forks source link

request/response header max size #189

Closed eriskooo closed 3 years ago

eriskooo commented 3 years ago

Hello, is there any chance to setup max header size for req/resp ?

Iam doing GET request to jasper with many parameters and end with

org.eclipse.jetty.http.BadMessageException: 500: Request header too large

Caused by: org.eclipse.jetty.http.BadMessageException: 500: Request header too large at org.eclipse.jetty.http.HttpGenerator.generateRequest(HttpGenerator.java:279) Caused by: java.nio.BufferOverflowException: null at java.nio.HeapByteBuffer.put(HeapByteBuffer.java:189)

Many thanks !

e.

eriskooo commented 3 years ago
http:
  port: 9080
  address: 0.0.0.0
  http2: true
  proxy-forwarding: true
  request-header-size: 8192
  response-header-size: 8192
eriskooo commented 3 years ago

unfortunately, applied those params, there is no difference in result.

my client is like

private PoeClient newClient(final URI uri) {
    return RestClientBuilder.newBuilder()
                            .baseUri(uri)
                            .build(PoeClient.class);
}
cen1 commented 3 years ago

You can try the initial patch here: https://github.com/kumuluz/kumuluzee-rest-client/tree/feature/configurableHttpClient (clone and build this branch, mvn clean install -DskipTests=true)

In readme section "Configuration of underlying http client" try to switch to http-url provider.

Right now, configuring buffer size for headers and for response body (your previous issue) for jetty is not yet possible because we need to find a solution upstream (jetty/jersey) which will take time.

It is also possible that using jetty implementation and setting request-buffer-size config in mp-client jetty section will increase the header buffer, but I have not yet tested this.