首页 > 解决方案 > 通过节点资源管理器连接到 cordatestnet 的问题

问题描述

我通过以下链接在 azure 市场中使用corda opensource 3.2:https ://docs.corda.net/head/testnet-explorer-corda.html 。我可以通过节点资源管理器连接到corda testnet并进行交易(使用文档中的corda-finance jar)。但我尝试将 cordapp-example jar 复制到天蓝色机器中的 /opt/corda/cordapps/ 文件夹,但无法连接到 corda 测试网(错误与财务 cordapp 有关)。那么,是不是无法使用我们定制的cordapp连接到corda testnet,还是我错过了任何需要遵循的步骤?

我收到以下错误:

net.corda.client.rpc.RPCException: net.corda.finance.flows.CashConfigDataFlow at net.corda.client.rpc.internal.RPCClientProxyHandler.invoke(RPCClientProxyHandler.kt:238) at com.sun.proxy.$Proxy27。 startFlowDynamic(Unknown Source) at net.corda.explorer.model.IssuerModel$cashAppConfiguration$1.invoke(IssuerModel.kt:27) at net.corda.explorer.model.IssuerModel$cashAppConfiguration$1.invoke(IssuerModel.kt:13) at net.corda.client.jfx.utils.ObservableUtilities$sam$Function$24de0b22.apply(ObservableUtilities.kt) at org.fxmisc.easybind.EasyBind$2.computeValue(EasyBind.java:70) at javafx.beans.binding.ObjectBinding .get(ObjectBinding.java:153) 在 javafx.beans.binding.ObjectExpression.getValue(ObjectExpression.java:50) 在 org.fxmisc.easybind.EasyBind$2.computeValue(EasyBind.java:70) 在 javafx.beans.binding .ObjectBinding。get(ObjectBinding.java:153) at javafx.beans.binding.ObjectExpression.getValue(ObjectExpression.java:50) at net.corda.client.jfx.utils.ChosenList.rechoose(ChosenList.kt:45)​​ at net.corda .client.jfx.utils.ChosenList.access$rechoose(ChosenList.kt:23) 在 net.corda.client.jfx.utils.ChosenList$1.invalidated(ChosenList.kt:34) 在 com.sun.javafx.binding。 ExpressionHelper$SingleInvalidation.fireValueChangedEvent(ExpressionHelper.java:137) at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81) at javafx.beans.binding.ObjectBinding.invalidate(ObjectBinding.java:172) at com .sun.javafx.binding.BindingHelperObserver.invalidated(BindingHelperObserver.java:51) 在 com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(ExpressionHelper.java:349) 在 com.sun.javafx.binding。ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81) at javafx.beans.binding.ObjectBinding.invalidate(ObjectBinding.java:172) at com.sun.javafx.binding.BindingHelperObserver.invalidated(BindingHelperObserver.java:51) at com.sun .javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(ExpressionHelper.java:349) at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81) at javafx.beans.property.ObjectPropertyBase.fireValueChangedEvent(ObjectPropertyBase.java :105) 在 javafx.beans.property.ObjectPropertyBase.markInvalid(ObjectPropertyBase.java:112) 在 javafx.beans.property.ObjectPropertyBase.set(ObjectPropertyBase.java:146) 在 net.corda.client.jfx.model.NodeMonitorModel。在 net.corda.explorer.views.LoginView.login(LoginView.kt:31) 在 net.corda.explorer.views.LoginView$login$$inlined$apply$lambda$1.call(LoginView.kt:42) 在 net.corda.explorer.views.LoginView$login$$inlined$apply$lambda $1.call(LoginView.kt:13) at javafx.scene.control.Dialog.impl_setResultAndClose(Dialog.java:1026) at javafx.scene.control.DialogPane.lambda$createButton$599(DialogPane.java:777) at com。 sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(CompositeEventHandler.java:218) at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:80) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent( EventHandlerManager.java:238) 在 com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191) 在 com.sun.javafx.event.CompositeEventDispatcher。dispatchBubblingEvent(CompositeEventDispatcher.java:59) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun .javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) 在 com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) 在 com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java :56) 在 com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) 在 com.sun.javafx.event 的 com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)。 com.sun.javafx.event.EventUtil 中的 EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)。fireEventImpl(EventUtil.java:74) at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:49) at javafx.event.Event.fireEvent(Event.java:198) at javafx.scene.Node.fireEvent (Node.java:8413) 在 javafx.scene.control.Button.fire(Button.java:185) 在 com.sun.javafx.scene.control.behavior.ButtonBehavior.mouseReleased(ButtonBehavior.java:182) 在 com. sun.javafx.scene.control.skin.BehaviorSkinBase$1.handle(BehaviorSkinBase.java:96) 在 com.sun.javafx.scene.control.skin.BehaviorSkinBase$1.handle(BehaviorSkinBase.java:89) 在 com.sun。 javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(CompositeEventHandler.java:218) 在 com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:80) 在 com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.爪哇:238)在 com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191) 在 com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59) 在 com.sun.javafx.event.BasicEventDispatcher .dispatchEvent(BasicEventDispatcher.java:58) 在 com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) 在 com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) 在 com. sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) 在 com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) 在 com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl. java:114) 在 com.sun.javafx.event.BasicEventDispatcher。dispatchEvent(BasicEventDispatcher.java:56) 在 com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) 在 com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74) 在 com.sun .javafx.event.EventUtil.fireEvent(EventUtil.java:54) 在 javafx.event.Event.fireEvent(Event.java:198) 在 javafx.scene.Scene$MouseHandler.process(Scene.java:3757) 在 javafx。在 javafx.scene.Scene.impl_processMouseEvent(Scene.java:1762) 在 javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:2494) 在 com.scene.scene$MouseHandler.access$1500(Scene.java:3485)。 sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:381) 在 com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:295) 在 java.security.AccessController。doPrivileged(Native Method) at com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleMouseEvent$354(GlassViewEventHandler.java:417) at com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(QuantumToolkit.java:389)在 com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(GlassViewEventHandler.java:416) 在 com.sun.glass.ui.View.handleMouseEvent(View.java:555) 在 com.sun.glass.ui.View .notifyMouse(View.java:937) 在 com.sun.glass.ui.win.WinApplication.enterNestedEventLoopImpl(Native Method) 在 com.sun.glass.ui.win.WinApplication._enterNestedEventLoop(WinApplication.java:218) 在 com .sun.glass.ui.Application.enterNestedEventLoop(Application.java:511) 在 com.sun.glass.ui.EventLoop.enter(EventLoop.java:107) 在 com.sun.javafx.tk.quantum.QuantumToolkit.enterNestedEventLoop (量子工具包.java:583) 在 javafx.stage.Stage.showAndWait(Stage.java:474) 在 javafx.scene.control.HeavyweightDialog.showAndWait(HeavyweightDialog.java:162) 在 javafx.scene.control.Dialog.showAndWait(Dialog.java:341 ) 在 net.corda.explorer.views.LoginView.login(LoginView.kt:71) 在 net.corda.explorer.Main.start(Main.kt:66) 在 com.sun.javafx.application.LauncherImpl.lambda$ com.sun.javafx.application.PlatformImpl.lambda$runAndWait 的 launchApplication1$162(LauncherImpl.java:863)$runAndWait$175(PlatformImpl.java:326) com.sun.javafx.application.PlatformImpl.lambda$null$173(PlatformImpl.java :295) 在 java.security.AccessController.doPrivileged(Native Method) 在 com.sun.javafx.application.PlatformImpl.lambda$runLater$174(PlatformImpl.java:294) 在 com.sun.glass.ui.InvokeLaterDispatcher$Future。在 com.sun.glass.ui.win 运行 (InvokeLaterDispatcher.java:95)。WinApplication.runLoop(Native Method) at com.sun.glass.ui.win.WinApplication.lambda$null$148(WinApplication.java:191) at java.lang.Thread.run(Unknown Source) 原因:java.lang。 ClassNotFoundException:net.corda.finance.flows.CashConfigDataFlow

标签: corda

解决方案


您收到此错误是因为您corda-finance的节点上不再安装 CorDapp。

添加 CorDapp 时,只需将corda-financeCorDapp 保存在节点的cordapps文件夹中cordapp-example。一个节点可以同时运行多个 CorDapp。


推荐阅读