У меня есть веб-сервис отдыха, написанный с использованием Springboot.
@PostMapping("testMe2")
public String testMe2(@RequestBody TestInBean testInBean) {
Log.info(this, "testMe : " + testInBean);
return "SUCCESS";
}
Вот мой класс TestInBean
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
@Data
@Builder
@EqualsAndHashCode(callSuper = false)
@NoArgsConstructor
@AllArgsConstructor
@JsonIgnoreProperties
public class TestInBean extends GenericInBean {
private String param1;
private String param2;
private Integer param3;
}
Когда я вызываю http://localhost:8090/myApp/api/v1/testMe2
с помощью ввода
{"param1":"Hello","paramxx":10}
тихо игнорирует ошибку, регистрируясь
DeserializationProblemHandler: в классе TestInBean
не существует свойства с именем 'param22'
Как сгенерировать ошибку при передаче неизвестного параметра?
Примечание:
Я могу добавить приведенный ниже код в класс Application.java моей весенней загрузки, чтобы показать ошибку при передаче неизвестного параметра.
@Bean
public Jackson2ObjectMapperBuilder mapperBuilder() {
return new Jackson2ObjectMapperBuilder().failOnUnknownProperties(true);
}
Но мне нужно, чтобы это работало только с конкретным методом.