javax
2 つの日付を互いに比較するための検証をセットアップしようとしています。一方の日付は他方よりも小さくする必要があります。
また、両方の日付に対してカスタム制約を作成しました。しかし、問題は、私の注釈インターフェイスが非プリミティブ データ型を処理できないことです。
これが私のコードです:(これが間違っていることは知っていますが、ソースを見せれば私の問題を理解できるかもしれません)
豆:
@DateValidator(firstDate="assignmentStart", secondDate="assignmentEnd")
public class ProjectAssignment implements IsSerializable {
private String id;
private Project project;
private String projectResponsibility;
private Date assignmentStart;
private Date assignmentEnd;
}
注釈インターフェース:
@Target({ TYPE, ANNOTATION_TYPE })
@Retention(RUNTIME)
@Constraint(validatedBy = DateValidatorImpl.class)
public @interface DateValidator {
String firstDate();
String secondDate();
String message() default "";
Class<?>[] groups() default {};
Class<? extends Payload>[] payload() default {};
}
ここに 1 つの問題があります。Date
型を型に入れようとしていString
ます。firstDate
しかし、 my andsecondDate
を として宣言すると、次のようDate
な問題があります。
Invalid type Date for the annotation attribute `DateValidator.firstDate;
only primitive type, `String`, `Class`, annotation, enumeration are permitted
or 1-dimensional arrays thereof
2 つの日付を互いに比較する他の方法はありますか?
私は何が欠けていますか?