私はjavax.validation
自分のプロジェクトで API を使用していますが、一部の開発者マシンとテスト サーバーで問題が発生しています。他の開発者マシンでは、Maven によって処理される同じ Glassfish バージョン、IDE、およびライブラリ スタックを使用しているにもかかわらず、このバグを再現できません。
この問題をデバッグしているときに、問題の原因である可能性があるものを疑っています (コンパイルされたクラス内でデバッグできないため、「疑わしい」) - 永続化可能なエンティティのインターフェイスがあります。
public interface PersistableEntity<T> {
public T getId();
public void setId(T id);
}
実装クラスは、「id」フィールド タイプによって分割されます:String
またはBigDecimal
. 制約は、実装のフィールド@Pattern
のゲッターに添付されます。id
PersistableEntity<String>
これが原因である場合、javax.validation
ジェネリックを使用して検証を維持し、同時に使用することは可能ですか?
更新 JSR303 からカスタム構成可能な検証メカニズムに移行することにしました。タイトルの問題を抱えている人が解決策を見つけた場合は、それがどれであるかを教えてください。回答としてマークします(経験豊富な SO ユーザーからのこのジレンマに対する他の解決策は大歓迎です)。