corda - Corda 白名单未更新
问题描述
我正在使用 Springboot RPC 网络服务器来运行我的 api。我已将 java.util.Date 放入白名单仍然抛出错误。
Class java.util.Date is not annotated or on the whitelist, so cannot be used in serialization
我创建了一个类
import net.corda.core.serialization.SerializationWhitelist
class RequiredSerializationWhitelist : SerializationWhitelist {
override val whitelist: List<Class<*>> = listOf(java.util.Date::class.java)
}
并将文件 net.corda.core.serialization.SerializationWhitelist 放在 \src\main\resources\META-INF\services 中,代码如下
com.p2p.RequiredSerializationWhitelist
在部署节点时我得到
No existing whitelist file found.
Calculating whitelist for current installed CorDapps..
CorDapp whitelist generated in <path>\build\nodes\whitelist.txt
Updating whitelist
Bootstrapping complete!
当我在给定的路径中打开我的白名单文件时,只显示我的合同。我错过了什么。
解决方案
我认为没有相同的白名单。\build\nodes\whitelist.txt 是 Corda 合约白名单类的文件。但是您的问题是 net.corda.core.serialization.SerializationWhitelist 应该在 META-INF/services 下的 JAR 文件中。你能在你的 JAR 文件中检查它,并且这个路径包含 SerializationWhitelist 文件吗?
推荐阅读
- python - id'sin python 的总和
- python - Tor 上的 SSH 隧道
- opencl - OpenCL Nvidia GPU 上的小型恒定内存大小
- python - 在将字典映射到数据框时使用多列
- php - 如何在我的 PHP switch 语句中修复此错误?未定义的索引
- list - SwifUI onAppear 被调用两次
- r - 根据参考日期计算创建新变量
- javascript - 通过 jQuery 设置图像源时,glide.js 中的最终图像不可见
- java - Mockito 可以在不单独指定每个参数匹配器的情况下模拟方法吗?
- java - 从 java 类构建复杂的 JSON 有效负载