SpringMVC での検証に問題があり、エラー メッセージが見つかりません。
次のようなエラーが No message found under code 'empty' for locale 'en_GB'.
あります。
サーブレットの春のコンテキストで構成しました:
<beans:bean id="messageSource"
class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<beans:property name="basename">
<beans:value>WEB-INF/classes/messages</beans:value>
</beans:property>
</beans:bean>
私のプロジェクトでは、ファイルはsrc/main/resources/messages.propertiesの下にあり、次のとおりです。
empty.user.password=Il campo password non può essere lasciato vuoto
empty.user.username=Il campo username non può essere lasciato vuoto
unique.user.username=L''username {0} è già usato
empty=Il campo non può essere vuoto
次に、バリデーターがあります。
@Override
public void validate(Object target, Errors errors) {
final User user = (User) target;
ValidationUtils.rejectIfEmptyOrWhitespace(errors, "username", "empty");
ValidationUtils.rejectIfEmptyOrWhitespace(errors, "password", "empty");
if (userRepository.findByUsername(user.getUsername()) != null){
errors.rejectValue("username", "unique", new Object[]{user.getUsername()}, "The username already exists");
}
}
そして私のJSPで:
<form:errors path="*" cssClass="alert error" element="div" />
何が問題なのかわかりません...
更新: アプリケーションを Eclipse 内の Tomcat にデプロイすると動作することに気付きました... maven と の両方を使用して実行すると問題が発生しjetty:run
ますtomcat:run