التحقق من صحة الربيع مع valid أين/كيف رسائل الخطأ المخصصة

StackOverflow https://stackoverflow.com/questions/4281165

سؤال

أحاول القيام ببعض التحقق من صحة الربيع من خلال رسائل الخطأ في ملفات الخصائص. لكن يبدو أن جميع الأمثلة التي أجدها تحتوي على القيم المتشددين ، أو حصلت عليها من ملف الخصائص ولكن باستخدام فئة المدقق واستردادها هناك.

الإعداد الخاص بي مختلف بعض الشيء. أنا أستخدم التعليق التوضيحي ValID في requertmapping الخاص بي ، ويستخدم فئة Valid الخاصة بي notnull وما إلى ذلك. ولكن هذا أيضًا متشدد ، وأرغب في وضع الرسائل في ملف الخصائص حتى أتمكن من تحريره بسهولة أثناء الطيران ، وبالتالي يمكنني تنفيذ i18n بسهولة في المستقبل.

أي مدخلات حول كيفية تحقيق ذلك سيكون موضع تقدير.

هل كانت مفيدة؟

المحلول

إنه يعمل بنفس الطريقة تمامًا كما هو صريح Validator - أنت إعلان أ MessageSource وكتابة رسائل الخطأ في .properties الملفات. تتشكل رموز الرسائل على أنها constraintName.modelAttributeName.propertyName:

publib class Foo {
    @NotNull private String name;
    ...
}

.

@RequestMapping
public String submitFoo(@Valid Foo foo, ...) { ... }

messages.properties:

NotNull.foo.name=...

MessageSource إعلان:

<bean id="messageSource"
    class="org.springframework.context.support.ResourceBundleMessageSource">
    <property name="basename" value = "messages" />
</bean>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top