@NotEmptyのようなHibernateバリデータを使って、クラス内の特定のプロパティが空であるかどうかを調べています。クラスは次のとおりです。Hibernate Validator:アノテーションにif - else kindのロジックを使用する
@Entity
@Table(name="emergency_messages")
public class EmergencyMessages implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="id", nullable=false)
private Integer id;
@NotEmpty(message="Home message cannot be empty")
@Column(name="home_page_message")
private String homePageMessage;
@Range(min=0, max=1, message="Please select one of the display announcement value")
@Column(name="messages_enabled")
private Integer messagesEnabled;
}
これまでのところとても良いです。プロパティ "homePageMessage"が空のときは、ブラウザのフォームに正しいエラーメッセージが表示されます。
ここで状況が変わりました。新しい要件では、プロパティ "homePageMessage"は、他のプロパティ "messagesEnabled"が1に設定されている場合にのみ空にできます。 "0"に設定されている場合、 "homePageMessage"に対して空のチェックが行われません。簡単に言えば、 "homePageMessage"の検証は "messagesEnabled"の値に依存するはずです。
私の質問:これはアノテーションで可能ですか?そうでなければ、私は自分の休止状態のバリデータメカニズムを解体し、自分自身のバリデーションクラスを作成する必要があります。
リンクをご利用いただきありがとうございます。それは役に立ちました。カスタムアノテーションを作成しようとします。 – Raj
グッドスタッフ私の男。 –