0

SpringMVCアプリケーションでHibernateValidatorを正しくセットアップしました。Beanは検証されていますが、エラーの表示に問題があります。

私のJSPページには、次の行があります。

<sf:errors path="*" cssClass="errors" element="div" />

ページを実行してchromeのインスペクターで検査すると、これらのエラーを保持するためのdiv(または任意の)要素がありません。それは完全に無視されます。次の行が同じJSPでhtmlフォームに正しく解決されるため、これは奇妙です。

<sf:form method="post" modelAttribute="tsCommand">

これが私が春のフォームに使用するtaglibです:

<%@ taglib prefix="sf" uri="http://www.springframework.org/tags/form"%>

何がうまくいかなかったのか、何か考えはありますか?

4

1 に答える 1

1

構文は正しいです。「element=\"div\"」属性についてはよくわかりません。

コントローラは次のように見える必要があります。

public void handleActionRequestInternal(@ModelAttribute("tsCommand") @Valid TsCommand tsCommand, BindingResult result, @ModelAttribute ModelMap model) throws Exception {

そしてあなたの文脈:

<bean id="annotationMethodHandlerAdapter"
    class="org.springframework.web.portlet.mvc.annotation.AnnotationMethodHandlerAdapter">
    <property name="webBindingInitializer">
        <bean id="configurableWebBindingInitializer"
            class="org.springframework.web.bind.support.ConfigurableWebBindingInitializer">
            <property name="validator">
                <ref bean="validator" />
            </property>
        </bean>
    </property>
</bean>
<bean id="validator"
    class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean" />

これで、それは大丈夫になるでしょう;)

于 2012-06-11T11:07:39.993 に答える