SpringBootで実行中のVaadin AppとともにRedisストレージでSpringSessionを使用しようとしています。セッションは私のアプリでSpringBootコントローラとうまく動作します。しかし、VaadinUIを表示すると、たとえ@Autowired beanなどのない単純なものであっても(以下の例)、次のエラーが発生します。Vaadin with SpringBoot - Redisのシリアル化エラー
org.springframework.data.redis.serializer.SerializationException: Cannot serialize; nested exception is org.springframework.core.serializer.support.SerializationFailedException: Failed to serialize object using DefaultSerializer; nested exception is java.io.NotSerializableException: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext
私は同様の投稿を見つけましたNotSerializableException on serialization of objects currently shown by Vaadinしかし、解決策は私のために働いていません。私もこのVaadinチケットhttps://dev.vaadin.com/ticket/19462を見つけましたが、@SerializableProxyはここに@Autowired beanがなく、エラーがまだ残っているので、下の簡単なUIには何の効果もありません。どのようにこれを解決するためのアイデア?データベース(Redis、memcachedなど)のセッションストレージは、私たちが構築しようとする負荷分散ソリューションにとって非常に重要です。
@SpringUI(path="/simple")
public class SimpleUI extends UI implements Serializable {
private static final long serialVersionUID = 1L;
@Override
protected void init(VaadinRequest request) {
}
}