私のエンティティクラスは次のようになります:
public class TimeFrame implements Serializable {
@NotNull
private Date startTime;
@NotNull
@Future
private Date stopTime;
私が追加した正しい順序にするために:
@AssertTrue(message="Wrong order")
public boolean isTimeFrameValid(){
return this.startTime.before(stopTime);
}
これで、JSF/Primefaces は入力の直後にこれを検証する必要があります。
<p:calendar id="aucstop" required="true" pages="2" value="#{transportbean.stopTime}" >
<p:ajax event="dateSelect" />
<f:validateBean/>
</p:calendar>
たとえば、「StopTime」に過去の日付を入力すると、すぐにメッセージが表示されました。ただし、「isTimeValid」メソッドは、オブジェクト全体が作成されている場合にのみ検証されます。入力直後にこれを検証する方法はありますか?
GF 3.1.1 プライムフェイス 3.4