我在项目中使用Infinispan和hibernate,遇到了一个奇怪的错误日志:
ISPN000936:类“[I”被反序列化白名单阻止。请调整配置序列化白名单正则表达式以包含此类
我已经有了这个问题,但是使用了普通的类名,所以我可以通过将类添加到序列化白名单来解决这个问题,如下所示:
globalConfigurationBuilder
.serialization()
.marshaller(new JavaSerializationMarshaller())
.whiteList()
.addClass(MyClass.class.getName());
但是有了这个奇怪的类名('[I'
)我不能这么做。我可以通过授权序列化白名单中的所有类来解决这个问题,如下所示:
globalConfigurationBuilder
.serialization()
.marshaller(new JavaSerializationMarshaller())
.whiteList()
.addRegexp(".*");
但是我想以更正确的方式处理这个问题。
有人遇到过同样的问题并设法解决了它吗?
[I
是int[]
的内部名称,因此您可以使用以下任一项:
.addClass("[I")
.addClass(int[].class.getName())
.addClasses(int[].class)
如果有多个,我会使用最后一个,这是一个vararg方法,例如。
.addClasses(MyClass.class,
FooClass.class,
BarClass.class,
int[].class)
我正在玩弄一个基本的无限泛集群,我遇到了一个令人费解的错误。 我基本上实现了一个共享映射,只包含一个整数 这是我的服务代码 缓存是通过以下方式生成的: 当集群中至少有两台服务器时,computeIfAbsen会失败 这可以归结为: 最后是: 如果我把我非常好的时髦代码重写成丑陋的代码,它就会起作用。 我怎么能使用漂亮的电脑现在没有做事的方式? Eclipse 2018-12、WildFly 14、
它说我需要白名单一个域,但我在控制台中找不到任何地方这样做,除了我创建的动态链接。我尝试运行下面的代码,但我得到 我不应该使用动态链接进行火警认证吗?如果是这样,我在控制台的什么地方白名单域,因为我找不到它。
我正在尝试使用kryo序列化和反序列化到二进制。我想我已经完成了序列化,但似乎无法反序列化。下面是我正在处理的代码,但最终我想存储一个字节[],然后再次读取它。文档只显示了如何使用文件。
问题内容: 使用,我可以将其发送到PHP页面。现在如何在PHP中反序列化它?它已在jQuery中序列化。 问题答案: 您无需从jquery 方法反序列化PHP中的任何内容。如果对数据进行序列化,则如果使用GET方法ajax请求,则应将其作为查询参数发送给PHP;如果使用POST ajax请求,则应将其作为vars发送。因此,在PHP中,您将访问类似或取决于请求类型的值。 该方法仅采用表单元素并将其
我试图使用一个服务,它给我一个实体,它的字段是一个数组。 但是,当数组包含单个项时,将返回项本身,而不是返回一个元素的数组。 在这种情况下,Jackson无法转换为我的Java对象。 有一个简单的解决方案吗?
问题内容: 我尝试过在Java和Android之间实现跨平台序列化。我使用了Serializable,并将我的代码在Android中与台式机Java放在同一软件包中。 来源:java-desktop序列化 资料来源:Android-反序列化 学生是一类,实现了Serializable。在桌面上,我将学生实例序列化为“ thestudent.dat”。我将此文件放在Android设备上的SD卡上,并