当前位置: 首页 > 知识库问答 >
问题:

连接到外部 HTTPS 网络服务时出错

雷曜灿
2023-03-14

我正在尝试调用一个出站的外部网络服务,即https。它在我当地的MuleStudion环境中工作正常。但是当我部署进行测试时。我收到异常

Message               : Failed to route event via endpoint: DefaultOutboundEndpoint{endpointUri=https://xxx.com/yyy, connector=HttpsConnector
{
  name=connector.https.mule.default
  lifecycle=start
  this=4670c992
  numberOfConcurrentTransactedReceivers=4
  createMultipleTransactedReceivers=true
  connected=true
  supportedProtocols=[https]
  serviceOverrides=<none>
}
,  name='endpoint.https.xxx.comy.yyy', mep=REQUEST_RESPONSE, properties={http.method=POST, Content-Type=text/xml}, transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0}, deleteUnacceptedMessages=false, initialState=started, responseTimeout=10000, endpointEncoding=UTF-8, disableTransportTransformer=false}. Message payload is of type: PostMethod
Code                  : MULE_ERROR-42999
--------------------------------------------------------------------------------

异常堆栈为:

  1. 信任Anchors参数必须为非空(java.security.Invalid算法参数异常)java.security.cert.PKIXP参数:200(null)
  2. 意外错误:java.security.Invalid算法参数异常:信任锚参数必须为非空(java.lang.Runtime异常)sun.security.validator.PKIXValidator: 90(null)
  3. java.lang.Runtime异常:意外错误:java.security.Invalid的算法参数异常:信任锚参数必须是非空的(javax.net.ssl.SSLEx的)sun.security.ssl.警报:208(http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/net/ssl/SSLException.html)
  4. 无法通过endpoint路由事件:默认endpoint{endpoint Uri=https://xxx.com/yyy,连接器=HttpsConntor

片段调用是

    <set-payload value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;soapenv:Envelope xmlns:soapenv=&quot;http://schemas.xmlsoap.org/soap/envelope/&quot; xmlns:mcs=&quot;http://www.cybershift.com/wfm3/mcs10/&quot; xmlns:ns=&quot;http://www.cybershift.com/wfm3/5/3/&quot;&gt;&lt;soapenv:Header&gt;&lt;mcs:UsernameToken&gt;&lt;mcs:clientName&gt;HHMI&lt;/mcs:clientName&gt;&lt;mcs:user&gt;xxx&lt;/mcs:user&gt;&lt;mcs:password&gt;yyy5&lt;/mcs:password&gt;&lt;/mcs:UsernameToken&gt;&lt;/soapenv:Header&gt;&lt;soapenv:Body&gt;&lt;mcs:RetrieveData&gt;&lt;mcs:businessObjectName&gt;SCHEDULE&lt;/mcs:businessObjectName&gt;&lt;mcs:queryValueObject action=&quot;ADD&quot; startDate=&quot;#[flowVars['payStartDate']]&quot; endDate=&quot;#[flowVars['payEndDate']]&quot;&gt;&lt;ns:StringAttribute name=&quot;pqr&quot;&gt;&lt;ns:string&gt;#[empIDS.get(flowVars['eid']-1).text]&lt;/ns:string&gt;&lt;/ns:StringAttribute&gt;&lt;/mcs:queryValueObject&gt;&lt;/mcs:RetrieveData&gt;&lt;/soapenv:Body&gt;&lt;/soapenv:Envelope&gt;" doc:name="Set Payload"/>
    <logger message="SOAP Request to ST #[message.payload]" level="INFO" doc:name="Logger"/>

    <https:outbound-endpoint exchange-pattern="request-response"    method="POST" doc:name="ST" contentType="text/xml" address="https://xxx.com/yyy"/>

我是否需要设置 https 连接器。如果是这样,我需要什么。非常感谢。

共有1个答案

杨凌
2023-03-14

通常这意味着未找到您指定的信任库,或者由于os中的访问权限而无法打开。检查服务是否可以访问密钥库。

 类似资料:
  • 问题内容: 我刚刚在跟随他们的网页时安装了Docker- Toolbox 我开始看下面 但是当我尝试表演时,这就是我所看到的 怎么了? 问题答案: 今天早上我遇到了同样的问题,以下内容为我解决了这个问题: 看来这是由于Docker虚拟机进入了一种奇怪的状态。这里有一个开放的github问题

  • 我在初始化javadb网络服务器和设置与它的连接时遇到问题。这是一个JavaFX程序。 这就是我目前的情况: 我总是抓住第二个例外。 如果我右键单击netbeans中的javadb服务并选择connect,一切都会顺利运行。[实际上,当我选择java时,最好能知道java在后台运行什么代码或程序] 在库下的项目列表中,我看到derby.jar、derbyclient.jar和derbynet.ja

  • 本文向大家介绍使用phpMyAdmin连接到外部服务器,包括了使用phpMyAdmin连接到外部服务器的使用技巧和注意事项,需要的朋友参考一下 下面的代码行可以添加到底部的/etc/phpmyadmin/config.inc.php文件中- 它将显示“当前服务器:”,并同时下拉“ 127.0.0.1”和$cfg ['Servers'] [$i] ['host']提供的下拉列表。 用户可以在两个服务

  • 我需要一些帮助来理解如何编写HTTP路由器,它将HTTP标头识别为路由标准。我找到了链接https://github.com/cgbystrom/netty-tools/blob/master/src/main/java/se/cgbystrom/netty/http/router/RouterHandler.java它似乎自己做路由。但是现在不清楚,如何 连接到另一个HTTP服务器 发送HTTP

  • 初始化-iMac:桌面初始化$openssl s_client-connect gateway.sandbox.push.apple.com:2195-cert pushchatcert.pem-key pushchatkey.pem 终端响应: CONNECTED(00000003)深度=1/c=US/O=Entrust,INC./OU=www.Entrust.net/RPA是通过引用合并的/O