Infinispan反序列化白名单:Class '[I'

Infinispan deserialization white list : Class '[I'

我在我的项目中同时使用 Infinispan 和 hibernate,我遇到了一个奇怪的错误日志:

ISPN000936: Class '[I' blocked by deserialization white list. Adjust the configuration serialization white list regular expression to include this class

我已经遇到了这个问题,但是 class 名称是正常的,所以我可以通过将 class 添加到序列化白名单来解决问题,如下所示:

globalConfigurationBuilder
        .serialization()
        .marshaller(new JavaSerializationMarshaller())
        .whiteList()
        .addClass(MyClass.class.getName());

但有了这个奇怪的 class 名称 ('[I'),我无法做到这一点。 我可以通过像这样授权序列化白名单中的所有 class 来解决问题:

globalConfigurationBuilder
        .serialization()
        .marshaller(new JavaSerializationMarshaller())
        .whiteList()
        .addRegexp(".*");

但我想以更恰当的方式处理问题。
有人遇到过同样的问题并设法解决了吗?

[Iint[] 的内部名称,因此您可以使用以下任一名称:

.addClass​("[I")

.addClass​(int[].class.getName())

.addClasses(int[].class)

当你有多个时,我会使用最后一个,这是一个可变参数方法,例如

.addClasses(MyClass.class,
            FooClass.class,
            BarClass.class,
            int[].class)