Проверка списка внутреннего запроса с Springboot против [null]JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Проверка списка внутреннего запроса с Springboot против [null]

Сообщение Anonymous »

Моя цель - проверить (сбой) против запроса, который выглядит следующим образом: < /p>

Код: Выделить всё

{
"title": "some title",
"foos": [null]
}
< /code>
У меня есть этот простой код: < /p>
import jakarta.validation.Valid;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;

@RestController
class FieldValidationController {

@PostMapping("/question")
String question(@Valid @RequestBody SomeRequest someRequest) {
return "test";
}

}
< /code>
record SomeRequest(

@NotEmpty(message = "Please enter the title")
String title,

@NotNull
@NotEmpty
@Valid
List foos

) {
}
< /code>
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;

import java.util.Map;

@NotNull
record Foo(@NotNull @NotEmpty String name, @NotNull @NotEmpty Map themap) {
}
< /code>
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
class FieldValidationApplication {

public static void main(String[] args) {
SpringApplication.run(FieldValidationApplication.class, args);
}

}
< /code>

         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0

org.springframework.boot
spring-boot-starter-parent
3.4.1
  


question


23
23
UTF-8




org.springframework.boot
spring-boot-starter-web


org.springframework.boot
spring-boot-starter-validation






org.springframework.boot
spring-boot-maven-plugin





< /code>
I can confirm this is som how working, since out of my 5 test cases, 4 are good (failing).
1- GOOD:
curl --location 'http://localhost:8080/question' \
--header 'Content-Type: application/json' \
--data '{
"title": "some title"
}'
< /code>
2- GOOD:
curl --location 'http://localhost:8080/question' \
--header 'Content-Type: application/json' \
--data '{
"title": "some title",
"foos": null
}'
< /code>
3- GOOD:
curl --location 'http://localhost:8080/question' \
--header 'Content-Type: application/json' \
--data '{
"title": "some title",
"foos": []
}'
< /code>
4- GOOD:
curl --location 'http://localhost:8080/question' \
--header 'Content-Type: application/json' \
--data '{
"title": "some title",
"foos": [{}]
}'
< /code>
However, I would expect this to also fail, but it does not.
curl --location 'http://localhost:8080/question' \
--header 'Content-Type: application/json' \
--data '{
"title": "some title",
"foos": [null]
}'
< /code>
May I ask how can I check against [null]
?

Подробнее здесь: https://stackoverflow.com/questions/794 ... ainst-null
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»