I have a data class :
import com.fasterxml.jackson.annotation.JsonInclude
import io.micronaut.serde.annotation.Serdeable
@Serdeable.Deserializable
@JsonInclude(JsonInclude.Include.NON_NULL)
data class PublishRequest(
val product: String,
val env: String = "")
I assumed this means that I can send a json like :
{
"product": "product2" }
and env would be set to “”
But I get :
io.micronaut.runtime.Micronaut – Startup completed in 2230ms. Server
Running: http://localhost:8080/v122:23:56.761 [default-nioEventLoopGroup-1-3] ERROR
i.m.http.server.RouteExecutor – Unexpected error occurred: Parameter
specified as non-null is null: method
com.imaginelearning.ctk.publishing.dto.PublishArtifactRequest.,
parameter label java.lang.NullPointerException: Parameter specified as
non-null is null: method x.y.z.., parameter env at
x.y.z.PublishRequest.
I dont want to make env as nullable. Want it to have a value passed by used or my default. Anyway to do that? Using Java 21, micronautVersion=4.4.2
jvmVersion=2