micronaut-projects / micronaut-projects/micronaut-aws
Protobuf not decoded and deserialized and passed to controller
- Dominant language
- Java
- Stars
- 92
- Forks
- 86
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 14
Description
### Task List
- [x] Steps to reproduce provided
- [na] Stacktrace (if present) provided
- [x] Example that reproduces the problem uploaded to Github
- [x] Full description of the issue provided (see below)
### Steps to Reproduce
1. Controller that receives a protobuf message
2. pass a APIGatewayProxyRequestEvent with a base64 encoded protobuf message to the MicronautLambdaContainerHandler
3. receive 400 with message "Required Body [] not specified"
Repo with test that replicates the behavior - https://github.com/KnutKnutson/proxy-proto-aws-gateway-micronaut/blob/main/app/src/test/kotlin/micronaut/proxy/proto/AppTest.kt#L61
### Expected Behaviour
The proper controller route should be found and executed with the decoded and deserialized proto message
### Actual Behaviour
receive 400 with message "Required Body [] not specified"
### Environment Information
- **Operating System**: mac os
- **Micronaut Version:** 2.5.1
- **JDK Version:** 11.0.11
### Example Application
- https://github.com/KnutKnutson/proxy-proto-aws-gateway-micronaut/blob/main/app/src/test/kotlin/micronaut/proxy/proto/AppTest.kt#L61
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the reproducing test in app/src/test/kotlin/micronaut/proxy/proto/AppTest.kt and trace how MicronautLambdaContainerHandler handles the APIGatewayProxyRequestEvent. Confirm the protobuf body is decoded and deserialized, then verify the proper controller route executes instead of returning the required-body 400 response.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, java, kotlin
- Domain
- api, backend, cloud
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100