MessageSource Spring: NotSerializableException - PullRequest
       3

MessageSource Spring: NotSerializableException

0 голосов
/ 07 сентября 2018

Я использую MessageSource для реализации интернационализации весной.

У меня есть что-то вроде этого.

В моем классе Config:

@Bean
public ReloadableResourceBundleMessageSource messageSource() {
    ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
    messageSource.setBasename("classpath:messages");
    messageSource.setDefaultEncoding("UTF-8");
    messageSource.setUseCodeAsDefaultMessage(true);
    return messageSource;
}

Моя фасоль

@Component
class MyClass implements Serializable {

    @Autowired(required = true)
    private MessageSource messages;
}

Когда я запускаю свой проект, я получаю это исключение:

Caused by: java.io.NotSerializableException: org.springframework.context.support.ReloadableResourceBundleMessageSource

Может кто-нибудь, пожалуйста, подскажите мне, как решить эту проблему.

1 Ответ

0 голосов
/ 07 сентября 2018

Согласно информации, которую вы предоставили здесь, проблема в вашем классе ReloadableResourceBundleMessageSource, так как он не реализует интерфейс Serializable.

Это обусловлено тем, что class MyClass implements Serializable в качестве переменных в классе Serializable должно быть либо Serializable, либо transient.

Таким образом, в соответствии с вашим классом либо класс ReloadableResourceBundleMessageSource должен реализовывать интерфейс Serializable, либо в вашем MyClass переменная должна выглядеть следующим образом

@Autowired(required=true)
private transient MessageSource messages;

Надеюсь, это поможет

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