dapr / dapr/java-sdk

Calling sdk's invokeMethod raise DaprException: UNKNOWN: HTTP status code: 400

Ouverte
#1,655 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
kind/bug
Langage dominant
Java
Étoiles
300
Forks
230
Merge moyen
5 j 1 h
PR mergées (30 j)
5

Description

HI
I recently upgrade dapr from 1.15.12 to 1.16.8, but encounter the issue when do service invocation in Java like:
```sh
Map headers = buildHeaders();
log.info("Invoking search service global search. Headers: {}", headers);
HttpExtension httpExtension = new HttpExtension(io.dapr.client.DaprHttp.HttpMethods.POST, null, headers);
log.info("Invoking search service global search. Request: {}", request);
log.info("Invoking search service global search. HttpExtension: {}", httpExtension);
log.info("Invoking search service global search. Method: {}", trimLeadingSlash(apiPrefix) + "/global");
JsonNode json = daprClient.invokeMethod(
searchServiceAppId,
trimLeadingSlash(apiPrefix) + "/global",
request,
httpExtension,
JsonNode.class
).block(Duration.ofMillis(invokeTimeoutMs));
```
the caller's log print out error:
```sh
2026-02-13 16:49:22.531
io.dapr.exceptions.DaprException: UNKNOWN: HTTP status code: 400
2026-02-13 16:49:22.531
2026-02-13 16:49:22.531
2026-02-13T08:49:22.500Z ERROR 1 --- [user-service] [nio-8080-exec-4] c.t.u.client.DaprDeviceServiceClient : Error creating device for operator jiaming-operator via Dapr: UNKNOWN: HTTP status code: 400
```
the callee has no log, I have no idea how and why the issue happen after the dapr upgrade(the code works before) and other sdk like python works as intended. **I test the code in local env successfully, but failed with the error in k8s**. Any idear for that, appreciated.

## Expected Behavior
Java sdk's service invocation works well as 1.15.12

## Actual Behavior

2026-02-13 16:49:22.531
io.dapr.exceptions.DaprException: UNKNOWN: HTTP status code: 400
2026-02-13 16:49:22.531
2026-02-13 16:49:22.531
2026-02-13T08:49:22.500Z ERROR 1 --- [user-service] [nio-8080-exec-4] c.t.u.client.DaprDeviceServiceClient : Error creating device for operator jiaming-operator via Dapr: UNKNOWN: HTTP status code: 400

## Steps to Reproduce the Problem
- upgrade dapr to 1.16.8
- re-deploy service
- call service API with java sdk (1.16.1) in application

## Release Note

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Start from the Java application's daprClient.invokeMethod call and compare behavior between Dapr 1.15.12 and 1.16.8 with Java SDK 1.16.1. Reproduce the request in Kubernetes, capturing the full 400 response and sidecar logs, then compare it with the successful local and Python calls. Done means identifying the upgrade-related cause and restoring service invocation.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java, kubernetes
Domaine
api, backend, devops
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.