Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring boot Hyperledger Fabric sdk java无法与订购方连接(未找到与localhost匹配的主题替代DNS名称)_Spring Boot_Ssl_Netty_Hyperledger Fabric_Hyperledger Fabric Sdk Js - Fatal编程技术网

Spring boot Hyperledger Fabric sdk java无法与订购方连接(未找到与localhost匹配的主题替代DNS名称)

Spring boot Hyperledger Fabric sdk java无法与订购方连接(未找到与localhost匹配的主题替代DNS名称),spring-boot,ssl,netty,hyperledger-fabric,hyperledger-fabric-sdk-js,Spring Boot,Ssl,Netty,Hyperledger Fabric,Hyperledger Fabric Sdk Js,我正在使用balance transfer示例来加速结构网络。样本已生成加密材料。我在Fabric SDK JAVA集成中使用了与工件文件夹和网络配置.yaml相同的引用 我能够注册/注册用户,查询链码,甚至所有交易都得到渠道所有对等方的成功认可 但是,事务提交给订购方进行提交失败,出现错误: Caused by: java.security.cert.CertificateException: No subject alternative DNS name matching localhost

我正在使用balance transfer示例来加速结构网络。样本已生成加密材料。我在Fabric SDK JAVA集成中使用了与
工件文件夹
网络配置.yaml
相同的引用

我能够注册/注册用户,查询链码,甚至所有交易都得到渠道所有对等方的成功认可

但是,事务提交给订购方进行提交失败,出现错误:

Caused by: java.security.cert.CertificateException: No subject alternative DNS name matching localhost found.
at sun.security.util.HostnameChecker.matchDNS(HostnameChecker.java:214) ~[na:1.8.0_181]
at sun.security.util.HostnameChecker.match(HostnameChecker.java:96) ~[na:1.8.0_181]
at sun.security.ssl.X509TrustManagerImpl.checkIdentity(X509TrustManagerImpl.java:455) ~[na:1.8.0_181]
at sun.security.ssl.X509TrustManagerImpl.checkIdentity(X509TrustManagerImpl.java:436) ~[na:1.8.0_181]
at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:252) ~[na:1.8.0_181]
at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:136) ~[na:1.8.0_181]
at io.netty.handler.ssl.OpenSslTlsv13X509ExtendedTrustManager.checkServerTrusted(OpenSslTlsv13X509ExtendedTrustManager.java:239) ~[netty-handler-4.1.36.Final.jar:4.1.36.Final]
at io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$ExtendedTrustManagerVerifyCallback.verify(ReferenceCountedOpenSslClientContext.java:247) ~[netty-handler-4.1.36.Final.jar:4.1.36.Final]
at io.netty.handler.ssl.ReferenceCountedOpenSslContext$AbstractCertificateVerifier.verify(ReferenceCountedOpenSslContext.java:697) ~[netty-handler-4.1.36.Final.jar:4.1.36.Final]
at io.netty.internal.tcnative.SSL.readFromSSL(Native Method) ~[netty-tcnative-boringssl-static-2.0.25.Final.jar:2.0.25.Final]
at io.netty.handler.ssl.ReferenceCountedOpenSslEngine.readPlaintextData(ReferenceCountedOpenSslEngine.java:570) ~[netty-handler-4.1.36.Final.jar:4.1.36.Final]
at io.netty.handler.ssl.ReferenceCountedOpenSslEngine.unwrap(ReferenceCountedOpenSslEngine.java:1146) ~[netty-handler-4.1.36.Final.jar:4.1.36.Final]
... 25 common frames omitted
奇怪的是,同一个网络与NodeSDK完美配合。我不确定是否缺少使用SSL所需的一些配置(因为在余额传输的示例网络中默认启用了SSL)


我已在主机文件中添加了主机条目。

即使是本地主机,您也必须使用证书中包含的主机名(即它是主题的备选名称之一)。(在更复杂的情况下,您可以使用自己的javax.net.ssl.hostnameVerifier,但现在不需要了。)

即使是本地主机,您也必须使用证书中包含的主机名(即它是主题的备选名称之一)。(在更复杂的情况下,您可以使用自己的javax.net.ssl.hostnameVerifier,但现在不需要了。)

您应该找出您的证书适用于哪些主机名,如果是“localhost”,则使用其中一个名称。@lorinczyzigmond感谢您的建议。它就像一个符咒。请将此添加到答案中。您应该了解您的证书适用于哪些主机名,如果是“localhost”,请使用其中一个名称。@lorinczyzigmond感谢您的建议。它就像一个符咒。请将此添加到答案中。同意。谢谢你的意见。我不知道localhost没有被用来生成证书和主机名。同意。谢谢你的意见。我不知道localhost没有被用来生成证书和主机名。