FasterXML / FasterXML/jackson-module-kotlin
Return multiple missing kotlin parameters at once
- Dominant language
- Kotlin
- Stars
- 1.2k
- Forks
- 187
- Avg merge
- 9h 48m
- Merged PRs (30d)
- 16
Description
### Use case
We expose public API and we want to to be as descriptive as possible returning bad request response. So we want to return all required null fields at once. By using `KotlinValueInstantiator` and `MissingKotlinParameterException` we are able to return just one at the time. So we use @NotNull annotation validation but this requires us to mark non-null fields as nullable and then use ugly `!!` in the code eg.
```
data class Task(
@field:NotNull
val taskType: TaskType?,
@field:NotNull
val createdAt: Instant?,
@field:NotNull
val updatedAt: Instant?,
)
```
### Describe the solution you'd like
It would be much nicer if exception thrown by jackson kotlin module contained all fields that are invalid (MissingKotlinParameter**s**Exception with a list of missing parameters?). Then we could simplify example above to
```
data class Task(
val taskType: TaskType,
val createdAt: Instant,
val updatedAt: Instant,
)
```
It could be configurable with some kind of flag to keep backward compatibility and not iterate through all fields if not necessary.
### Describe alternatives you've considered
_No response_
### Additional context
_No response_
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.