Corda 独立编织服务器-错误:无法分析或解析类型=>;无法注册流

Corda 独立编织服务器-错误:无法分析或解析类型=>;无法注册流,corda,Corda,我正在尝试将一个独立的Braid服务器连接到由deployNodes gradle任务(Corda 4.3,Braid 4.1.2)启动的本地节点。我们的Cordapp以Corda帐户为特色 现在,在braid服务器启动时(在IntelliJ中,使用命令行参数localhost:10006 usernm passwd 10200 3“../PartyA/cordapps”),braid成功地为某些流提取API,而对于其他流,我会收到如下错误: 08:34:24.204 [braid-startu

我正在尝试将一个独立的Braid服务器连接到由deployNodes gradle任务(Corda 4.3,Braid 4.1.2)启动的本地节点。我们的Cordapp以Corda帐户为特色

现在,在braid服务器启动时(在IntelliJ中,使用命令行参数
localhost:10006 usernm passwd 10200 3“../PartyA/cordapps”
),braid成功地为某些流提取API,而对于其他流,我会收到如下错误:

08:34:24.204 [braid-startup-threadpool-0] ERROR io.bluebank.braid.core.synth.SyntheticModelConverter - failed to parse or resolve type: class generated.com.r3.corda.lib.accounts.workflows.flows.RequestKeyForAccountPayload
08:34:24.205 [braid-startup-threadpool-0] WARN  io.bluebank.braid.corda.server.BraidCordaStandaloneServer - unable to register flow:com.r3.corda.lib.accounts.workflows.flows.RequestKeyForAccount
java.lang.RuntimeException: Unable to convert actual type: class generated.com.r3.corda.lib.accounts.workflows.flows.RequestKeyForAccountPayload
    at io.bluebank.braid.corda.rest.docs.v3.ModelContextV3.addType(ModelContextV3.kt:72) ~[classes/:?]
    at io.bluebank.braid.corda.rest.docs.v3.EndPointV3.resolveTypes$braid_corda(EndPointV3.kt:113) ~[classes/:?]
    at io.bluebank.braid.corda.rest.docs.v3.EndPointV3$Companion.create(EndPointV3.kt:71) ~[classes/:?]
    at io.bluebank.braid.corda.rest.docs.v3.DocsHandlerV3.add(DocsHandlerV3.kt:145) ~[classes/:?]
    at io.bluebank.braid.corda.rest.RestMounter.bind(RestMounter.kt:280) ~[classes/:?]
    at io.bluebank.braid.corda.rest.RestMounter.postFuture(RestMounter.kt:247) ~[classes/:?]
    at io.bluebank.braid.corda.server.BraidCordaStandaloneServer.addFlow(BraidCordaStandaloneServer.kt:271) ~[classes/:?]
    at io.bluebank.braid.corda.server.BraidCordaStandaloneServer.access$addFlow(BraidCordaStandaloneServer.kt:46) ~[classes/:?]
    at io.bluebank.braid.corda.server.BraidCordaStandaloneServer$createRestConfig$1$2$3.invoke(BraidCordaStandaloneServer.kt:254) ~[classes/:?]
    at io.bluebank.braid.corda.server.BraidCordaStandaloneServer$createRestConfig$1$2$3.invoke(BraidCordaStandaloneServer.kt:46) ~[classes/:?]
    at io.bluebank.braid.corda.rest.RestMounter.group(RestMounter.kt:165) ~[classes/:?]
    at io.bluebank.braid.corda.server.BraidCordaStandaloneServer$createRestConfig$1$2.invoke(BraidCordaStandaloneServer.kt:248) ~[classes/:?]
    at io.bluebank.braid.corda.server.BraidCordaStandaloneServer$createRestConfig$1$2.invoke(BraidCordaStandaloneServer.kt:46) ~[classes/:?]
    at io.bluebank.braid.corda.rest.RestMounter.protected(RestMounter.kt:197) ~[classes/:?]
    at io.bluebank.braid.corda.server.BraidCordaStandaloneServer$createRestConfig$1.invoke(BraidCordaStandaloneServer.kt:238) ~[classes/:?]
    at io.bluebank.braid.corda.server.BraidCordaStandaloneServer$createRestConfig$1.invoke(BraidCordaStandaloneServer.kt:46) ~[classes/:?]
    at io.bluebank.braid.corda.rest.RestConfig$withPaths$1.invoke(RestConfig.kt:67) ~[classes/:?]
    at io.bluebank.braid.corda.rest.RestConfig$withPaths$1.invoke(RestConfig.kt:23) ~[classes/:?]
    at io.bluebank.braid.corda.rest.RestMounter.mount(RestMounter.kt:99) ~[classes/:?]
    at io.bluebank.braid.corda.rest.RestMounter.<init>(RestMounter.kt:91) ~[classes/:?]
    at io.bluebank.braid.corda.rest.RestMounter$Companion.mount(RestMounter.kt:50) ~[classes/:?]
    at io.bluebank.braid.corda.BraidVerticle.setupRouter(BraidVerticle.kt:120) ~[classes/:?]
    at io.bluebank.braid.corda.BraidVerticle.access$setupRouter(BraidVerticle.kt:35) ~[classes/:?]
    at io.bluebank.braid.corda.BraidVerticle$start$2.handle(BraidVerticle.kt:70) ~[classes/:?]
    at io.bluebank.braid.corda.BraidVerticle$start$2.handle(BraidVerticle.kt:35) ~[classes/:?]
    at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:272) ~[vertx-core-3.7.1.jar:3.7.1]
    at io.vertx.core.impl.TaskQueue.run(TaskQueue.java:76) ~[vertx-core-3.7.1.jar:3.7.1]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_171]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_171]
    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.24.Final.jar:4.1.24.Final]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_171]
Caused by: java.lang.NoClassDefFoundError: Lcom/r3/corda/lib/accounts/contracts/states/AccountInfo;
    at java.lang.Class.getDeclaredFields0(Native Method) ~[?:1.8.0_171]
    at java.lang.Class.privateGetDeclaredFields(Class.java:2583) ~[?:1.8.0_171]
    at java.lang.Class.getDeclaredFields(Class.java:1916) ~[?:1.8.0_171]
    at com.fasterxml.jackson.databind.util.ClassUtil.getDeclaredFields(ClassUtil.java:1078) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.AnnotatedFieldCollector._findFields(AnnotatedFieldCollector.java:66) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.AnnotatedFieldCollector.collect(AnnotatedFieldCollector.java:41) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.AnnotatedFieldCollector.collectFields(AnnotatedFieldCollector.java:36) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.AnnotatedClass._fields(AnnotatedClass.java:349) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.AnnotatedClass.fields(AnnotatedClass.java:321) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.POJOPropertiesCollector._addFields(POJOPropertiesCollector.java:379) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.POJOPropertiesCollector.collectAll(POJOPropertiesCollector.java:308) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.POJOPropertiesCollector.getPropertyMap(POJOPropertiesCollector.java:287) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.POJOPropertiesCollector.getProperties(POJOPropertiesCollector.java:170) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.BasicBeanDescription._properties(BasicBeanDescription.java:164) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.BasicBeanDescription.findProperties(BasicBeanDescription.java:239) ~[jackson-databind-2.9.7.jar:2.9.7]
    at io.bluebank.braid.core.synth.SyntheticModelConverter.resolveSchema(SyntheticModelConverter.kt:189) ~[classes/:?]
    at io.bluebank.braid.core.synth.SyntheticModelConverter.getOrCreateModel(SyntheticModelConverter.kt:157) ~[classes/:?]
    at io.bluebank.braid.core.synth.SyntheticModelConverter.resolve(SyntheticModelConverter.kt:104) ~[classes/:?]
    at io.swagger.v3.core.converter.ModelConverterContextImpl.resolve(ModelConverterContextImpl.java:90) ~[swagger-core-2.0.9.jar:2.0.9]
    at io.swagger.v3.core.converter.ModelConverters.resolveAsResolvedSchema(ModelConverters.java:112) ~[swagger-core-2.0.9.jar:2.0.9]
    at io.bluebank.braid.corda.rest.docs.v3.ModelContextV3.createSwaggerModels(ModelContextV3.kt:116) ~[classes/:?]
    at io.bluebank.braid.corda.rest.docs.v3.ModelContextV3.addType(ModelContextV3.kt:62) ~[classes/:?]
    ... 30 more
Caused by: java.lang.ClassNotFoundException: com.r3.corda.lib.accounts.contracts.states.AccountInfo
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381) ~[?:1.8.0_171]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0_171]
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) ~[?:1.8.0_171]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_171]
    at java.lang.Class.getDeclaredFields0(Native Method) ~[?:1.8.0_171]
    at java.lang.Class.privateGetDeclaredFields(Class.java:2583) ~[?:1.8.0_171]
    at java.lang.Class.getDeclaredFields(Class.java:1916) ~[?:1.8.0_171]
    at com.fasterxml.jackson.databind.util.ClassUtil.getDeclaredFields(ClassUtil.java:1078) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.AnnotatedFieldCollector._findFields(AnnotatedFieldCollector.java:66) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.AnnotatedFieldCollector.collect(AnnotatedFieldCollector.java:41) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.AnnotatedFieldCollector.collectFields(AnnotatedFieldCollector.java:36) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.AnnotatedClass._fields(AnnotatedClass.java:349) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.AnnotatedClass.fields(AnnotatedClass.java:321) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.POJOPropertiesCollector._addFields(POJOPropertiesCollector.java:379) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.POJOPropertiesCollector.collectAll(POJOPropertiesCollector.java:308) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.POJOPropertiesCollector.getPropertyMap(POJOPropertiesCollector.java:287) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.POJOPropertiesCollector.getProperties(POJOPropertiesCollector.java:170) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.BasicBeanDescription._properties(BasicBeanDescription.java:164) ~[jackson-databind-2.9.7.jar:2.9.7]
    at com.fasterxml.jackson.databind.introspect.BasicBeanDescription.findProperties(BasicBeanDescription.java:239) ~[jackson-databind-2.9.7.jar:2.9.7]
    at io.bluebank.braid.core.synth.SyntheticModelConverter.resolveSchema(SyntheticModelConverter.kt:189) ~[classes/:?]
    at io.bluebank.braid.core.synth.SyntheticModelConverter.getOrCreateModel(SyntheticModelConverter.kt:157) ~[classes/:?]
    at io.bluebank.braid.core.synth.SyntheticModelConverter.resolve(SyntheticModelConverter.kt:104) ~[classes/:?]
    at io.swagger.v3.core.converter.ModelConverterContextImpl.resolve(ModelConverterContextImpl.java:90) ~[swagger-core-2.0.9.jar:2.0.9]
    at io.swagger.v3.core.converter.ModelConverters.resolveAsResolvedSchema(ModelConverters.java:112) ~[swagger-core-2.0.9.jar:2.0.9]
    at io.bluebank.braid.corda.rest.docs.v3.ModelContextV3.createSwaggerModels(ModelContextV3.kt:116) ~[classes/:?]
    at io.bluebank.braid.corda.rest.docs.v3.ModelContextV3.addType(ModelContextV3.kt:62) ~[classes/:?]
    ... 30 more
…而许多其他流都是API化的,没有任何问题

现在看来,唯一有问题的流是那些与帐户相关的类或构造函数中的cordapp类

不知道该试什么。不敢相信您必须将流构造函数签名限制为标准Java或Corda核心类。
缺少注释/类加载混乱…?

Project Braid是Lab577开发的一个开源项目

该问题将报告给Lab577

08:34:24.216 [braid-startup-threadpool-0] ERROR io.bluebank.braid.core.synth.SyntheticModelConverter - failed to parse or resolve type: class generated.com.r3.corda.lib.accounts.workflows.flows.ShareAccountInfoPayload
08:34:24.216 [braid-startup-threadpool-0] WARN  io.bluebank.braid.corda.server.BraidCordaStandaloneServer - unable to register flow:com.r3.corda.lib.accounts.workflows.flows.ShareAccountInfo
java.lang.RuntimeException: Unable to convert actual type: class generated.com.r3.corda.lib.accounts.workflows.flows.ShareAccountInfoPayload
[...]
Caused by: java.lang.TypeNotPresentException: Type com.r3.corda.lib.accounts.contracts.states.AccountInfo not present
[...]
Caused by: java.lang.ClassNotFoundException: com.r3.corda.lib.accounts.contracts.states.AccountInfo
[...]

08:34:24.233 [braid-startup-threadpool-0] ERROR io.bluebank.braid.core.synth.SyntheticModelConverter - failed to parse or resolve type: class generated.com.r3.corda.lib.accounts.workflows.flows.ShareStateWithAccountPayload
08:34:24.233 [braid-startup-threadpool-0] WARN  io.bluebank.braid.corda.server.BraidCordaStandaloneServer - unable to register flow:com.r3.corda.lib.accounts.workflows.flows.ShareStateWithAccount
java.lang.RuntimeException: Unable to convert actual type: class generated.com.r3.corda.lib.accounts.workflows.flows.ShareStateWithAccountPayload
[...]
Caused by: java.lang.NoClassDefFoundError: Lcom/r3/corda/lib/accounts/contracts/states/AccountInfo;
[...]
Caused by: java.lang.ClassNotFoundException: com.r3.corda.lib.accounts.contracts.states.AccountInfo
[...]

08:34:24.433 [braid-startup-threadpool-0] ERROR io.bluebank.braid.core.synth.SyntheticModelConverter - failed to parse or resolve type: class generated.com.mycompany.tokens.flows.IssueTokenPayload
08:34:24.433 [braid-startup-threadpool-0] WARN  io.bluebank.braid.corda.server.BraidCordaStandaloneServer - unable to register flow:com.mycompany.tokens.flows.IssueToken
java.lang.RuntimeException: Unable to convert actual type: class generated.com.mycompany.tokens.flows.IssueTokenPayload
[...]
Caused by: java.lang.TypeNotPresentException: Type com.mycompany.data.MyCordappData not present
[...]
Caused by: java.lang.ClassNotFoundException: com.mycordapp.data.MyCordappData
[...]