Атрибут сеанса как аргумент метода в Spring MVC - PullRequest
0 голосов
/ 14 января 2011

Я использую Bozho решение для создания аннотации атрибута сеанса под Spring mvc.
У меня проблема, когда объект отсутствует в сеансе, и у меня что-то вроде

@SessionAttribute(required = false) MyFormObject myFormObject

Аннотация определяется как

@Target(ElementType.PARAMETER)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface SessionAttribute {
    String value() default "";
    boolean required() default true;
    String defaultValue() default ValueConstants.DEFAULT_NONE;
}

Я получаю исключение, поскольку defaultValue() возвращает String, а мой пользовательский ArgumentResolver пытается присвоить String MyFormObject.

Как я могу поручить Spring назначить null на myFormObject вместо ValueConstants.DEFAULT_NONE?

Ответы [ 2 ]

0 голосов
/ 14 января 2011

defaultValue может быть именем пользователя, которое вы можете найти, введя dao в распознаватель.Но иметь пользователя по умолчанию не имеет особого смысла, так что просто верните ноль

0 голосов
/ 14 января 2011

Разве вы не можете просто изменить пользовательский WebArgumentResolver, чтобы он возвращал null вместо defaultValue, когда атрибут не найден?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...