从Dropwizard

时间:2015-10-02 09:58:22

标签: rest dropwizard

我正在制作一个基于Dropwizard的应用程序。我有以下表示,称为飞行,我使用注释来验证与飞行相关的表单代表性。

import com.fasterxml.jackson.annotation.JsonFormat;
import org.mongodb.morphia.annotations.Entity;
import org.mongodb.morphia.annotations.Id;
import javax.validation.constraints.NotNull;
import java.util.Date;

@Entity("Flight")
public class Flight {
    @Id
    String id;
    @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm", timezone="CET")
    @NotNull
    private Date departureDate;
    @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm",  timezone="CET")
    @NotNull
    private Date arrivalDate;
    @NotNull
    private Airport arrivalAirport;
    // getters and setters methods ...
}

我使用@JsonFormat(shape = JsonFormat.Shape.STRING,pattern =“yyyy-MM-dd HH:mm”,timezone =“CET”)以此格式序列化此日期。当我通过@NotNull发送带有空字段的表单时,我成功显示错误消息,但是当我输入无效的日期格式并且以相同的形式输入空字段时我只得到

{code: 400, message: "Unable to process JSON"}    
  code: 400    
  message: "Unable to process JSON"

是否可以自定义此日期验证错误消息并同时显示其他验证消息?

例如,当我没有输入arrivalAirport值时,我得到“arrivalAirport:可能不为空”。  我想收到例如:

**"departureDate: invalid date format"** 
**"arrivalAirport: may not be null"**

当我没有输入arrivalAirport值和departureDate值的无效格式时。

谢谢。

0 个答案:

没有答案