私はKotlinの春にデータモデルを検証するソリューションを探しました。しかし、できません。 以下はタグdata class
です。MongoDBでスプリングバリデーションを使用できません
data class Tag(@field:NotNull var name: String) {
lateinit @Id var id: ObjectId
}
私は豆の検証私の知識を1として
@Configuration
open class ValidatorConfig {
@Bean
open fun validator() = LocalValidatorFactoryBean()
}
を使用するように設定を有効にしている、春ブーツは、自動的にすべてのビーンの設定をロードします。空のJSONでポストするとき、実行時に、適切な検証エラーがスローされている必要がありますが、次のエラーがスローされ
Instantiation of [simple type, class kagaz.sano.model.Tag] value failed for
JSON property name due to missing (therefore NULL) value for creator parameter
name which is a non-nullable type\n at [Source:
[email protected]; line: 3, column: 1]
(through reference chain: kagaz.sano.model.Tag[\"name\"])
あなたの特性は、String型です。したがって、Kotlinはnullを格納することを許可しません。そして、nullかどうかバリデーターにチェックさせます。ストリングが必要ですか?それのために。 –
しかし、String?を使用すると、データは検証なしでDBに格納されます。 –
設定がロードされたことを確認しましたか?検証をトリガするコード/注釈はどこにありますか? –