2017-08-20 2 views
0

Parfois, je rencontre une erreur de niveau inférieur lors de la connexion au système Eloqua à l'aide du composant HTTP. Parfois, il récupère correctement les données d'Eloqua, mais dans de rares cas, il obtient l'erreur ci-dessous.Erreur de connexion lors de l'extraction de données à partir d'Eloqua en mule

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) ******************************************************************************** 

Voici comment le composant HTTP est configuré

<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> 

genre similaire d'exception que je suis tout connecter à Salesforce, dans Salesforce, il est connecter option à tout moment est là que j'activé. Y a-t-il la même option dans le composant HTTP?

Répondre

0

J'ai trouvé la solution, il fonctionne avec succès jusqu'à, voici le code

<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>