From 2db1b73d5d4b2296487f68a50d68ae4d0a91b599 Mon Sep 17 00:00:00 2001 From: Marcel Date: Sun, 12 Apr 2026 23:08:11 +0200 Subject: [PATCH] fix(ocr): force HTTP/1.1 on RestClient to OCR service JDK HttpClient defaults to HTTP/2 with upgrade negotiation. Uvicorn rejects the upgrade ('Unsupported upgrade request'), causing the request body to be lost and a 422 'Field required' from FastAPI. Force HTTP/1.1 since the OCR service is internal and doesn't need h2. Co-Authored-By: Claude Sonnet 4.6 --- .../org/raddatz/familienarchiv/service/RestClientOcrClient.java | 1 + 1 file changed, 1 insertion(+) diff --git a/backend/src/main/java/org/raddatz/familienarchiv/service/RestClientOcrClient.java b/backend/src/main/java/org/raddatz/familienarchiv/service/RestClientOcrClient.java index 4ab7958f..1130e67e 100644 --- a/backend/src/main/java/org/raddatz/familienarchiv/service/RestClientOcrClient.java +++ b/backend/src/main/java/org/raddatz/familienarchiv/service/RestClientOcrClient.java @@ -23,6 +23,7 @@ public class RestClientOcrClient implements OcrClient, OcrHealthClient { public RestClientOcrClient(@Value("${app.ocr.base-url:http://ocr-service:8000}") String baseUrl) { HttpClient httpClient = HttpClient.newBuilder() + .version(HttpClient.Version.HTTP_1_1) .connectTimeout(Duration.ofSeconds(10)) .build(); JdkClientHttpRequestFactory requestFactory = new JdkClientHttpRequestFactory(httpClient);