尝试将springsession与redis存储一起使用,同时使用运行在springboot下的vaadin应用程序。会话可以在我的应用程序中与SpringBoot控制器一起正常工作。但是当显示vaadinui时,即使是一个没有任何@autowired bean等的简单的vaadinui(下面的例子),我得到了以下错误。

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在下面的简单ui中没有efect,因为这里没有@autowired bean,错误仍然存在。知道怎么解决吗?数据库(redis、memcached等)会话存储对于我们试图构建的负载平衡解决方案非常重要。
@SpringUI(path="/simple")
public class SimpleUI extends UI implements Serializable {
    private static final long serialVersionUID = 1L;

    @Override
    protected void init(VaadinRequest request) {

    }
}

最佳答案

这是一种已知的虫子。你需要提供你自己的springuiprovider。
https://dev.vaadin.com/ticket/19462

关于spring-boot - Vaadin与SpringBoot - Redis序列化错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39047169/

10-14 11:21