私は次のものを持っています。
@XmlRootElement
public class SomeObject {
private String requiredField;
@XmlElement(name="address", required=true)
public String getRequiredField() {
return requiredField;
}
public void setRequiredField(String requiredField) {
this.requiredField = requiredField;
}
}
ただし、対応する Jersey リソースがこのオブジェクトを作成するために必要な JSON を消費すると、必要に応じて注釈が付けられたフィールドの有無にかかわらず、オブジェクトが正常に作成されます。
Jersey と JAXB、または直接関連するテクノロジを使用して、requiredField の値が消費された JSON に存在することを確認する方法はありますか? 上記の例には何が欠けていますか?
例:
JSON本体にrequiredFieldの値が含まれていないため、次のような呼び出しを拒否したいと思います。
curl -i -X POST -H 'content-type:application/json' -d '{}' http://some/uri
むしろ、私はこのようなものを機能させたいと思っています。
curl -i -X POST -H 'content-type:application/json' -d '{"requiredField":"Hello, world!"}' http://some/uri