在Java RESTful服务请求参数验证中,如果请求有效内容中不存在所需的参数,则应抛出错误。
我尝试过以下但是没有用:
public class OrderItemDetailsDTO {
@XmlElement(required = true)
private long orderItemId;
// getters and setters...
}
我也试过@NotNull
,@min(1)
,但没有一个奏效。即使所需的参数不存在,也会调用URL并执行方法,然后该方法抛出一个我不想要的异常。
有什么方法可以抛出错误,在转到方法之前说不存在所需的元素?...
请看看这个article。这里还有一个基于该文章的小代码片段。我希望这有帮助
public class OrderItemDetailsDTO {
@XmlElement
@Min(1)
private long orderItemId;
// getters and setters...
}
@Path("orders")
public class OrdersResource {
@POST
@Consumes({ "application/xml" })
public void place(@Valid OrderItemDetailsDTO order) {
// Jersey recognizes the @Valid annotation and
// returns 400 when the JavaBean is not valid
}
}