dapr / dapr/java-sdk

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

Open
#1,655 0 comments 0 reactions 0 assignees View on GitHub
kind/bug
Dominant language
Java
Stars
300
Forks
230
Avg merge
1d 20h
Merged PRs (30d)
4

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

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.