Salesforce到Mule Soft

时间:2015-08-19 12:36:48

标签: salesforce mule-studio

我有一个要求,需要将Salesforce中的帐户和联系信息传递给Mule Soft。 它需要通过SOAP(WSDL文件)来完成。

如何从Mulesoft获取WSDL文件?任何人都这样做是salesforce? 请指导我如何做到这一点?

1 个答案:

答案 0 :(得分:0)

使用Mule Anypoint Studio,您可以使用Salesforce Connector和Salesforce流元素,该元素将从Salesforce获取联系信息。 Mule中的Salesforce Connector使用Salesforce的SOAP接口。

在你的骡子流中你可以简单地使用

<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上的教程可用 可以大大帮助。