0

プロパティ ファイルを使用してカスタム検証エラー メッセージを使用しようとしています。messages.properties ファイルを web content/web-inf/ フォルダーに配置しました。

    NonEmpty.batchDomain.batchName=Invalid message 2.

私のapplicationContextファイルは次のとおりです。

      <context:component-scan base-package="com.coaching.controller" />

<!-- Enable annotation driven controllers, validation etc... -->
<mvc:annotation-driven />

<!-- Resolves view names to protected .jsp resources within the /WEB-INF/views 
    directory -->
<bean id="viewResolver"
    class="org.springframework.web.servlet.view.InternalResourceViewResolver">



    <property name="prefix">
        <value>/WEB-INF/views/</value>
    </property>
    <property name="suffix">
        <value>.jsp</value>
    </property>
</bean>
<mvc:default-servlet-handler />
<mvc:resources mapping="/resources/**" location="/resources/" />

<bean id="messageSource"
    class="org.springframework.context.support.ReloadableResourceBundleMessageSource">

    <property name="basename" value="/WEB-INF/messages" />

</bean>

そして私のコントローラーは:

    @RequestMapping(method = RequestMethod.POST)
public ModelAndView addBatch(
        @Valid @ModelAttribute("batchDomain") BatchDomain batchDomain,
        BindingResult result, HttpServletRequest request,
        HttpServletResponse response) throws Exception {

    try {

        if (result.hasErrors()) {
            ModelAndView modelAndView = new ModelAndView("newBatch");
            return modelAndView;
        }
    }

BatchDomain は次のとおりです。

       public class BatchDomain {

@NotNull
@NotEmpty
@Size(min = 1, max = 100)
private String batchName;

@Min(1)
@Max(1000)
private int strength;

 }

私がグーグルで見た限り、私は正しいアプローチに従っています。では、この問題の背後にある理由は何でしょうか?

4

1 に答える 1