Salesforce Connections

Creating Salesforce Connection
Important Details

Salesforce connection allows you to connect to Salesforce. The connection is required by components reading from and writing to Salesforce.

Creating Salesforce Connection

To create a Salesforce connection, right click Connections in Outline and choose ConnectionsCreate Salesforce Connection.

In Salesforce Connection Dialog, fill in Username, Password, and Security token.

Salesforce Connection Dialog

Figure 33.14. Salesforce Connection Dialog


Username is your Salesforce username.

Password is password to your Salesforce account.

Security token is a security token for an external application. You can acquire a new security token in Salesforce web GUI: [Username]My SettingsPersonalReset My Security Token.

To specify password and security token, use Secure Graph Parameters.

Salesforce Connection Dialog II

Figure 33.15. Salesforce Connection Dialog II


Login hostname is a URL of Salesforce service. The default value is login.salesforce.com.

Connect timeout (seconds) is timeout for creating the Salesforce connection. The default value is 30.

Read timeout (seconds) is timeout for subsequent network operations. The default value is 30.

Default bulk polling interval (seconds) is time between requests for results of asynchronous calls. This configuration can be overridden in configuration of Salesforce components. Lower value means faster response but more API calls.

If you need to use a proxy, it can be configured on Proxy tab. In Salesforce connection, only an anonymous proxy is supported.

Salesforce Connection Dialog III

Figure 33.16. Salesforce Connection Dialog III


Use Validate connection to validate the connection.

Use OK to save the configuration.

Important Details

Salesforce edition

Using Salesforce connections requires the Integration via web service API Salesforce feature. Make sure your Salesforce edition supports the API integration.

Limits on Connections

If you design a graph, you should know that there is a limit on number of requests and on number of concurrent requests. These limits depend on the Salesforce edition you use. See the Salesforce documentation for details on these limits.

Salesforce and Java 1.7

If you use Salesforce components with Java 1.7, you should enable TLS version 1.2. To enable TLSv1.2 in Designer, add the following parameter at the end of the CloverDXDesigner.ini file under -vmargs line:

  -Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2

Add the same parameter to the container hosting CloverDX Server or to CloverDX Runtime.

Without a proper configuration, you can encounter an error message similar to the following one:

Failed to parse detail:  START_TAG seen ...</sf:exceptionMessage><sf:upgradeURL>... 
@1:752 due to: com.sforce.ws.ConnectionException: unable to find end tag at:  
START_TAG seen ...</sf:exceptionMessage><sf:upgradeURL>... @1:752

SSL hostname verification fails of Weblogic

Salesforce server's certificate has CN=*.salesforce.com. It causes SSL hostname verification to fail on Weblogic.

Possible solutions are:

  1. Disable SSL Hostname verification by adding following parameters to container hosting CloverDX Server.

    -Dweblogic.security.SSL.ignoreHostnameVerification=true
    -Dweblogic.nodemanager.sslHostNameVerificationEnabled=false

    See https://community.oracle.com/thread/1023441?tstart=0

  2. Configure weblogic.security.utils.SSLWLSWildcardHostnameVerifier as a hostname verifier. See http://serverfault.com/questions/503751/certificate-verification-error-when-sending-a-service-request-from-weblogic.

  3. Use the Sun HTTP handler instead of Weblogic's one. Add the following parameter to the container hosting CloverDX Server:

    -DUseSunHttpHandler=true

The above-mentioned solutions work with supported Weblogic versions except Weblogic 10. If you use Weblogic 10, use following properties:

-DUseSunHttpHandler=true 
-Dssl.SocketFactory.provider=sun.security.ssl.SSLSocketFactoryImpl 
-Dssl.ServerSocketFactory.provider=sun.security.ssl.SSLSocketFactoryImpl
See also:
SalesforceReader
SalesforceBulkReader
SalesforceWriter
SalesforceBulkWriter
SalesforceWaveWriter
Extracting Metadata from Salesforce