2015-08-19 2 views
0

У меня есть требование, необходимо передать Аккаунт и контактную информацию от Salesforce до Mule Soft. Это должно быть сделано с помощью SOAP (WSDL File).Salesforce to Mule Soft

Как получить файл WSDL от Mulesoft? Кто-нибудь сделал это salesforce? Прошу, пожалуйста, как это сделать?

ответ

0

Используя Mule Anypoint Studio, вы можете использовать элемент Salesforce Connector и элемент потока Salesforce, который получит контактную информацию от Salesforce. Коннектор Salesforce в Mule использует интерфейс SOAP из Salesforce.

Внутри вашего Mule потока вы можете просто использовать

<sfdc:query config-ref="SalesforceConfig" query="dsql:SELECT * FROM Contact" doc:name="Salesforce"/> 

выше код вернет вам объект потокового. Одна из лучших вещей, которые нужно сделать в этот момент, - это реализовать трансформатор Java после этого, чтобы впитать результаты и превратить их в то, что вы хотите.

<custom-transformer class="org.stackoverflow.transformers.QueryResultsToWhatever" doc:name="Java"/> 

класс затем будет написано в Java:

public class QueryResultsToWhatever extends AbstractMessageTransformer { 
    public Object transformMessage(MuleMessage message, String outputEncoding) 
     throws TransformerException { 

    // get the Streaming list of maps that is the payload 
    org.mule.streaming.ConsumerIterator<Map<Object, Object>> CI = message 
      .getPayload(org.mule.streaming.ConsumerIterator.class); 

    if (CI.hasNext()) { 
     Object _obj = CI.next(); 
     //Each Iterator represents a row returned from the query 
     if (_obj instanceof Map) { 

      Map<Object, Object> sfmap = (Map<Object, Object>) _obj; 
      // cast it 
      // Now you have a Map to access each field inside each row 

Поскольку это довольно простой случай использования для соединителя Salesforce, учебники доступны на https://developer.mulesoft.com/docs/display/current/Salesforce+Connector может сильно помочь.

Смежные вопросы