2

Spring を 3.2.0.RELEASE から 3.2.1.RELEASE に更新した後、次のエラーが発生しました。

[skip]
java.lang.IllegalArgumentException: The source to convert from must be an instance of @org.hibernate.validator.constraints.NotEmpty @javax.validation.constraints.Size @javax.validation.constraints.Pattern java.lang.String; instead it was a ru.mystamps.web.model.ActivateAccountForm
    at org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:164)
    at org.springframework.validation.AbstractPropertyBindingResult.formatFieldValue(AbstractPropertyBindingResult.java:125)
    at org.springframework.validation.AbstractBindingResult.getFieldValue(AbstractBindingResult.java:222)
    at org.springframework.web.servlet.support.BindStatus.<init>(BindStatus.java:120)
    at org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getBindStatus(AbstractDataBoundFormElementTag.java:179)
    at org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getPropertyPath(AbstractDataBoundFormElementTag.java:199)
    at org.springframework.web.servlet.tags.form.LabelTag.autogenerateFor(LabelTag.java:130)
    at org.springframework.web.servlet.tags.form.LabelTag.resolveFor(LabelTag.java:120)
    at org.springframework.web.servlet.tags.form.LabelTag.writeTagContent(LabelTag.java:90)
    at org.springframework.web.servlet.tags.form.AbstractFormTag.doStartTagInternal(AbstractFormTag.java:103)
    at org.springframework.web.servlet.tags.RequestContextAwareTag.doStartTag(RequestContextAwareTag.java:80)
    at org.apache.jsp.WEB_002dINF.tiles.body.account.activate_jsp._jspx_meth_form_label_2(activate_jsp.java:667)
    at org.apache.jsp.WEB_002dINF.tiles.body.account.activate_jsp._jspService(activate_jsp.java:224)
[skip]

モデル宣言:

@FieldsMismatch(first = "login", second = "password")
public class ActivateAccountForm implements ActivateAccountDto {                                    
     @Size(max = ValidationRules.LOGIN_MAX_LENGTH)
    private String login;

    ...
}

コントローラ:

@RequestMapping(value = Url.ACTIVATE_ACCOUNT_PAGE, method = RequestMethod.POST)                 
public String processActivationForm(@Valid ActivateAccountForm form, BindingResult result) {
    ...
}

この場合、私は何を間違っていますか?

4

1 に答える 1

1

これは潜在的なバグのように聞こえますが、複製に問題があります。https://jira.springsource.org/browse/SPR-10243についてさらに情報を提供していただけますか

于 2013-01-31T01:42:07.693 に答える