Intermittierender "Fehler Parsing HTTP -Anforderungsheader" beim Aufrufen von API im Spring Boot 2.7.4Java

Java-Forum
Anonymous
 Intermittierender "Fehler Parsing HTTP -Anforderungsheader" beim Aufrufen von API im Spring Boot 2.7.4

Post by Anonymous »

Ich habe ein Problem, das ich scheinbar nicht zu lösen scheine, da ich Schwierigkeiten habe, die Grundursache zu identifizieren. Ich hoffe, hier etwas Hilfe zu finden.

Code: Select all

@GetMapping("api/datas/options")
public List getAllOptions(){
return pomppdoptRepository.findAll();
}
< /code>
Ich versuche, eine Anfrage mit Postman an diesen Endpunkt zu senden. Hier ist meine Postman-Konfiguration: 
.../iBB.co/8n3nfdnp]]]]]]/P>
Wenn ich die Anforderung sende, empfange ich eine 200-OK-Antwort, aber wenn ich meine Protokolle überprüfe, stelle ich fest.  PrettyPrint-Override ">Received [GET /api/datas/options HTTP/1.1
Authorization: Bearer token
User-Agent: PostmanRuntime/7.43.3
Accept: */*
Cache-Control: no-cache
Postman-Token: 57c14232-ed07-4247-a00a-19cf2eb34d5e
Host: localhost:8082
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Cookie: JSESSIONID=90155C405D55A5E7968C4617A05BE184

]
< /code>
Fehler: < /p>
2025-04-02 10:07:41.383 DEBUG 24432 --- [nio-8082-exec-5] o.apache.coyote.http11.Http11Processor   : Error parsing HTTP request header

java.io.EOFException: null
at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1340) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.read(NioEndpoint.java:1227) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.coyote.http11.Http11InputBuffer.fill(Http11InputBuffer.java:805) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:360) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:271) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:890) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at java.base/java.lang.Thread.run(Thread.java:842) ~[na:na]
< /code>
2025-04-02 10:07:41.383 DEBUG 24432 --- [nio-8082-exec-5] o.apache.coyote.http11.Http11Processor   : Error state [CLOSE_CONNECTION_NOW] reported while processing request

java.io.EOFException: null
at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1340) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.read(NioEndpoint.java:1227) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.coyote.http11.Http11InputBuffer.fill(Http11InputBuffer.java:805) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:360) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:271) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:890) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.65.jar:9.0.65]
at java.base/java.lang.Thread.run(Thread.java:842) ~[na:na]
< /code>
Wenn ich jedoch die Anforderung sofort neu sende, wird der Fehler nicht in den Protokollen angezeigt. Aber wenn ich ein paar Minuten warte und es erneut versuche, kommt der Fehler zurück.  Wenn ich mehrere gleichzeitige Anfragen sende, begegne ich erneut dasselbe Problem.logging:
level:
org.apache.coyote.http11: DEBUG
org.springframework.web: DEBUG
org.apache.coyote.http11.Http11Processor: DEBUG

server:
tomcat:
threads:
max: 200
min-spare: 10
accesslog:
enabled: true
pattern: "%h %l %u %t \"%r\" %s %b"
connection-timeout: 60000  # 60 secondes
keep-alive-timeout: 60000  # 60 secondes
port: 8082

spring:
datasource:
hikari:
connection-test-query: SELECT 1
maximum-pool-size: 20
minimum-idle: 5
idle-timeout: 60000
max-lifetime: 1800000
connection-timeout: 30000
jpa:
show-sql: true
open-in-view: false
properties:
hibernate:
format_sql: true
hibernate:
naming:
physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
implicit-strategy: org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyJpaImpl
Hat jemand auf ein ähnliches Problem gestoßen oder hat eine Idee, wie man dies auflöst?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post