Feedback
Did this article resolve your question/issue?

   

Article

Error after Salesforce TLS upgrade using Connect for JDBC driver

Information

 
TitleError after Salesforce TLS upgrade using Connect for JDBC driver
URL Nameerror-after-salesforce-tls-upgrade-using-connect-for-jdbc-driver
Article Number000178920
EnvironmentProduct: Connect for JDBC Salesforce Driver
Version: 5.1.4
OS: Windows
Database: Salesforce
Application: N/A
Question/Problem Description
An error was encountered after a TLS related Salesforce upgrade.
Steps to Reproduce
Clarifying Information
Error Message8000 : 08004 : java.sql.SQLException: [DataDirect][SForce JDBC Driver][SForce]com.ddtek.sforce.externals.org.apache.cxf.interceptor.Fault: Unmarshalling Error: unexpected element (uri:"urn:fault.partner.soap.sforce.com", local:"upgradeURL"). Expected elements are <{urn:fault.partner.soap.sforce.com}exceptionCode>,<{urn:fault.partner.soap.sforce.com}exceptionMessage>
java.sql.SQLException: [DataDirect][SForce JDBC Driver][SForce]com.ddtek.sforce.externals.org.apache.cxf.interceptor.Fault: Unmarshalling Error: unexpected element (uri:"urn:fault.partner.soap.sforce.com", local:"upgradeURL"). Expected elements are <{urn:fault.partner.soap.sforce.com}exceptionCode>,<{urn:fault.partner.soap.sforce.com}exceptionMessage>
Defect Number
Enhancement Number
Cause
Incompatibility with Java
Resolution
Be sure to use a version of Java that is compliant with Salesforce's TLS requirements.

Consider the following details found on the Salesforce help site:

https://help.salesforce.com/HTViewSolution?id=000221207
 

Java 8 (1.8) and higher

Compatible with TLS 1.1 or higher by default.

Java 7 (1.7)

Enable TLS 1.1 and TLS 1.2 using the https.protocols Java system property for HttpsURLConnection. To enable TLS 1.1 and TLS 1.2 on non-HttpsURLConnection connections, set the enabled protocols on the created SSLSocket and SSLEngine instances within the application source code. Switching to IBM Java may be an effective workaround if upgrading to a newer Oracle Java version isn't feasible.

Java 6 (1.6) update 111 and higher

 

Enable TLS 1.1 using the https.protocols Java system property for HttpsURLConnection. To enable TLS 1.1 on non-HttpsURLConnection connections, set the enabled protocols on the created SSLSocket and SSLEngine instances within the application source code. This Java 6 update and newer updates are not publicly available and require a support contract for Java 6 from Oracle

Java 6 (1.6) and below (publicly available version)

Not compatible with TLS 1.1 or higher encryption. Switching to IBM Java may be an effective workaround if upgrading to a newer Oracle Java version isn't feasible.

Workaround
Notes
Last Modified Date12/26/2016 6:27 PM
Files
Disclaimer The origins of the information on this site may be internal or external to Progress Software Corporation (“Progress”). Progress Software Corporation makes all reasonable efforts to verify this information. However, the information provided is for your information only. Progress Software Corporation makes no explicit or implied claims to the validity of this information.

Any sample code provided on this site is not supported under any Progress support program or service. The sample code is provided on an "AS IS" basis. Progress makes no warranties, express or implied, and disclaims all implied warranties including, without limitation, the implied warranties of merchantability or of fitness for a particular purpose. The entire risk arising out of the use or performance of the sample code is borne by the user. In no event shall Progress, its employees, or anyone else involved in the creation, production, or delivery of the code be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the sample code, even if Progress has been advised of the possibility of such damages.