有时我在使用HTTP组件连接到Eloqua系统时遇到错误。有时它会正确地从Eloqua获取数据,但在极少数情况下会出现以下错误。
20:31:11.474 08/18/2017 Worker-0 [elq-sfdc-batch-interface-v1].ma-sfdc-ma-batch-interfaceFlow.stage1.29 ERROR
Remote host closed connection. Possible SSL/TLS handshake issue. Check protocols, cipher suites and certificate set up. Use -Djavax.net.debug=handshake for further debugging.
20:31:11.477 08/18/2017 Worker-0 [elq-sfdc-batch-interface-v1].ma-sfdc-ma-batch-interfaceFlow.stage1.29 ERROR
******************************************************************************** Message : Error sending HTTP request. Element : /ma-sfdc-ma-batch-interfaceFlow/processors/18/get-ma-exported-data/subprocessors/0 @ elq-sfdc-batch-interface-v1:ma-sfdc-marketing-activities-create-export.xml:74 (Get All Exported Data) -------------------------------------------------------------------------------- Exception stack is: Error sending HTTP request. (org.mule.api.MessagingException) (set debug level logging or '-Dmule.verbose.exceptions=true' for everything) ********************************************************************************
这是HTTP组件的配置方式
<http:request-config name="Eloqua_BULK_API" protocol="HTTPS" host="${eloqua.host}" port="${eloqua.port}" basePath="/API/BULK/2.0" connectionIdleTimeout="1200000" responseTimeout="1200000" doc:name="HTTP Request Configuration">
<http:basic-authentication username="${eloqua.username}" password="${eloqua.password}" preemptive="true"/>
</http:request-config>
<http:request config-ref="Eloqua_BULK_API" path="#[flowVars.'uri-export-data-contact']" method="GET" doc:name="Get All Exported Data">
<http:request-builder>
<http:query-param paramName="limit" value="${eloqua.record.limit.activities}"/>
<http:query-param paramName="offset" value="#[sessionVars.offset]"/>
</http:request-builder>
</http:request>
我在连接到salesforce时遇到类似的异常,在salesforce中随时都有连接选项,我启用了它。 HTTP组件中是否有相同的选项?
答案 0 :(得分:0)
我找到了解决方案,它一直有效,直到成功,下面是代码
<until-successful maxRetries="20" millisBetweenRetries="40000" synchronous="true" doc:name="Until Successful">
<processor-chain doc:name="Processor Chain">
<http:request config-ref="Eloqua_BULK_API" path="#[flowVars.'uri-export-data-contact']" method="GET" doc:name="Get All Exported Data">
<http:request-builder>
<http:query-param paramName="limit" value="${eloqua.record.limit.activities}"/>
<http:query-param paramName="offset" value="#[sessionVars.offset]"/>
</http:request-builder>
</http:request>
</processor-chain>
</until-successful>