2016-03-22 3 views
1

Вот мой пример: Java:Как внести атрибуты ввода, необходимые в запросе тела тела?

@JsonProperty("id") 
private String id; 
@JsonProperty(value = "name", required = true) 
private String deviceName; 

Я сделал имя в качестве обязательного поля. В запросе, как сделать это необходимым полем. Я должен отправить значение имени из запроса.

Но когда я ввожу это:

{ "id": "abc123",} 

Он должен отправить обратно сообщение об ошибке.

Пожалуйста, помогите мне.

ответ

1

Jacksons JsonProperty Аннотация не используется для валидации. см.: Jackson @JsonProperty(required=true) doesn't throw an exception. Но вы можете использовать Bean Validation, например .:

class Device { 

    @JsonProperty("id") 
    private String id; 

    @NotEmpty 
    @JsonProperty(value = "name") 
    private String deviceName; 
} 
+0

Но его не работает. Я аннотировал имя устройства как @NotNull, и я не отправляю deviceName из почтальона, он не бросает ошибку, все еще выполняет с именем deviceName как null. – vamsi

+0

вы можете попробовать @NotEmpty –

+0

, пожалуйста, взгляните на эту ссылку, как включить проверку. https://jersey.java.net/documentation/latest/bean-validation.html#d0e13383 –